A React TypeScript monorepo application for Bahmni applications, built with Nx, Webpack, and Carbon Design System. This application includes PWA support for offline capabilities.
Bahmni is an open-source healthcare information system designed to serve healthcare providers in resource-limited settings. It combines electronic medical records (EMR), hospital information management, and clinical workflows into a unified platform. Bahmni is built on OpenMRS and focuses on making healthcare delivery more efficient and patient-centric. The platform follows FHIR (Fast Healthcare Interoperability Resources) standards to ensure interoperability with other healthcare systems.
- React - UI library for building user interfaces
- Carbon Design System - IBM's open-source design system
- Webpack - Module bundler for modern JavaScript applications
- React Router - Declarative routing for React applications
- i18n Support - Internationalization for multiple languages
- Display Controls - Reusable clinical data visualization components
- Node.js (v18.x or later recommended)
- Yarn (v1.22.x or later recommended)
# Install dependencies
yarnFor a comprehensive setup guide including development environments, Docker configuration, authentication setup, and troubleshooting, please refer to our Setup Guide.
- Frontend Architecture - A comprehensive overview of the Bahmni Apps Frontend architecture
- Project Structure - A high-level overview of the project structure
- i18n Guide - Internationalization implementation details
- Sortable Data Table Guide - Usage of the sortable data table component
- Global Notification Guide - Using the notification system
# Build the application
yarn build The build artifacts will be stored in the dist/ directory.
# Start the development server
yarn nx serve distroThis will start the development server at http://localhost:3000.
# Run ESLint to check for code quality issues
yarn lint
# Fix ESLint issues automatically
yarn lint:fixFor a more detailed explanation of the project structure and architecture, see Architecture Documentation and Project Structure Documentation.
yarn dev- Start the development serveryarn build- Build the application for productionyarn test- Run testsyarn test:watch- Run tests in watch modeyarn test:coverage- Run tests with coverage reportyarn lint- Run ESLint to check for code quality issuesyarn lint:fix- Fix ESLint issues automaticallyyarn format- Format code with Prettier
- React - UI library
- TypeScript - Type-safe JavaScript
- Carbon Design System - IBM's design system
- Webpack - Module bundler
- React Router - Routing library
- i18next - Internationalization framework
- Jest - Testing framework
- React Testing Library - React testing utilities
- ESLint - Code quality tool
- Prettier - Code formatter
- Workbox - PWA tooling
[Add license information here]