A comprehensive hospital management system built with Next.js 13+ and Firebase, designed to streamline healthcare workflows and improve patient care management.
- Real-time appointment dashboard
- Patient medical history access
- AI-powered prescription suggestions
- Appointment status management
- Patient records management
- User management (doctors, receptionists)
- Real-time analytics dashboard
- System monitoring
- User activity tracking
- Role-based access control
- Appointment scheduling
- Patient registration
- Queue management
- Real-time updates
- Patient search functionality
- Medical history access
- Appointment tracking
- Prescription history
- Profile management
- Frontend: Next.js 13+ (App Router), React 18, TypeScript
- Styling: Tailwind CSS, Shadcn UI
- Database: Firebase Realtime Database
- Forms: React Hook Form
- Date Handling: date-fns
- State Management: React Context
- Authentication: Firebase Auth
- API: Next.js API Routes
- Node.js 16+
- Firebase account
- npm/yarn/pnpm
- Git
- Clone repository:
git clone https://github.com/yourusername/clinicare.git
cd clinicare
2. Install dependencies:
```bash
npm install
# or
yarn install
# or
pnpm install- Create a
.env.localfile:
NEXT_PUBLIC_FIREBASE_API_KEY=your_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_DATABASE_URL=your_db_url
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id- Start the development server:
npm run dev
# or
yarn dev
# or
pnpm devVisit http://localhost:3000 to view your application.
├── app/
│ ├── admin/ # Admin dashboard
│ ├── doctor/ # Doctor portal
│ ├── receptionist/ # Receptionist portal
│ ├── api/ # API routes
│ └── layout.tsx # Root layout
├── components/
│ ├── admin_dashboard/ # Admin components
│ ├── doctor_dashboard/ # Doctor components
│ ├── patient_dashboard/ # Patient components
│ ├── receptionist_dashboard/ # Receptionist components
│ └── ui/ # Shared UI components
├── lib/
│ ├── firebase.ts # Firebase config
│ └── utils/ # Utility functions
├── types/ # TypeScript types
└── styles/ # Global styles
npm run dev- Start development servernpm run build- Build production bundlenpm run start- Start production servernpm run lint- Run ESLintnpm run format- Format code with Prettier
Create a .env.local file with the following variables:
NEXT_PUBLIC_API_URL=your_api_url
DATABASE_URL=your_database_url
This project can be deployed using Vercel:
- Push your code to GitHub
- Import your repository to Vercel
- Configure environment variables
- Deploy!
- Fork the repository
- Create a new branch:
git checkout -b feature/your-feature - Commit changes:
git commit -m 'Add your feature' - Push to the branch:
git push origin feature/your-feature - Submit a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ using