This repository contains the frontend application for the Medical Codex Administration system.
- Node.js (v20 LTS recommended)
- IDE (Visual Studio Code, JetBrains IDEs, etc.)
-
Clone the repository:
git clone https://github.com/grey-box/medical-codex-admin-frontend.git cd medical-codex-admin-frontend
-
Install dependencies:
npm install
-
Set up environment variables:
- Copy
.env.template
to.env.local
- Adjust values in
.env.local
as needed
- Copy
-
Start the development server:
npm run dev
The application should now be running at
http://localhost:3000
.
npm run test # Run tests
npm run test:coverage # Run tests with coverage report
Ensure the development server is running on port 3000 before running Cypress tests.
npm run cypress:open # Open Cypress Test Runner
npm run cypress:headless # Run Cypress tests in headless mode
npm run fix-format-and-lint # Auto-format code and run linter
(Add deployment instructions here if different from Azure setup)
-
Install Azure CLI:
brew update && brew install azure-cli
-
Login to Azure:
az login --use-device-code export AZ_SUBSCRIPTION_ID="your_subscription_id" az account set --subscription "${AZ_SUBSCRIPTION_ID}"
-
Set up environment variables:
export AZ_APPSERVICE_PLAN="MedicalCodexApp" export AZ_RESGRP="project_codex_dev" export AZ_APP_NAME="MedicalCodexFrontend"
-
Create an App Service Plan (if not existing):
az appservice plan create \ --name "${AZ_APPSERVICE_PLAN}" \ --resource-group "${AZ_RESGRP}" \ --sku B1 \ --is-linux \ --tags project=codex
-
Create a web app:
az webapp create --name "${AZ_APP_NAME}" \ --resource-group "${AZ_RESGRP}" \ --plan "${AZ_APPSERVICE_PLAN}" \ --runtime "NODE:20-lts"
-
Configure environment variables:
az webapp config appsettings set --name "${AZ_APP_NAME}" \ --resource-group "${AZ_RESGRP}" \ --settings SCM_DO_BUILD_DURING_DEPLOYMENT=1 \ REACT_APP_API_URL="https://medicalcodexbackend.azurewebsites.net"
-
Deploy the web app:
az webapp up --name "${AZ_APP_NAME}" \ --resource-group "${AZ_RESGRP}" \ --sku B1 --runtime "NODE:20-lts"
This project is developed by Grey-Box. You should contact the organization and join our volunteer team before doing extensive work on this software.
We will gladly accept small fixes as pull requests.
This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.
For more information about the Apache License, Version 2.0, please visit: http://www.apache.org/licenses/LICENSE-2.0_