A comprehensive healthcare platform designed to facilitate communication and coordination between cancer patients, doctors, patient navigators, and caregivers.
CanConnect is a web-based application that streamlines the cancer care journey by connecting all stakeholders in the treatment process. It provides specialized interfaces for different user roles and facilitates efficient patient care management.
- Dashboard: Overview of appointments, patient requests, and feedback
- Patient Management: View and manage patient information
- Appointment Management: Schedule and track patient appointments
- Progress Reports: Create and monitor patient progress reports
- Resource Center: Access medical resources and guidelines
- Treatment Timeline: Track treatment progress and upcoming appointments
- Document Management: Store and access medical records
- Communication Hub: Direct communication with doctors and navigators
- Resource Access: Educational materials and support resources
- Patient Tracking: Monitor patient progress and needs
- Resource Coordination: Connect patients with necessary resources
- Communication Management: Facilitate patient-doctor communication
- Support Services: Coordinate additional support services
- Patient Monitoring: Track patient's treatment schedule
- Communication: Direct line with healthcare providers
- Resource Access: Caregiver support materials
- Backend: Node.js with Express.js
- Frontend: EJS templating engine with Bootstrap 5
- Database: MongoDB with Mongoose ODM
- Authentication: Passport.js
- Additional Libraries:
- Chart.js for data visualization
- Font Awesome for icons
- Bootstrap for responsive design
-
Prerequisites
- Node.js (v14 or higher) - MongoDB (v4.4 or higher) - npm (v6 or higher)
-
Clone the Repository
git clone [repository-url] cd CanConnect -
Install Dependencies
npm install
-
Environment Setup Create a
.envfile in the root directory:PORT=3000 MONGODB_URI=mongodb://localhost:27017/cancer_navigation SESSION_SECRET=your_session_secret
-
Database Setup
# Start MongoDB service mongod -
Start the Application
# Development mode npm run dev # Production mode npm start
CanConnect/
├── models/ # Database models
├── routes/ # Route handlers
├── views/
│ ├── pages/ # Page templates
│ │ ├── auth/ # Authentication pages
│ │ ├── doctor/ # Doctor interface
│ │ ├── patient/ # Patient interface
│ │ └── navigator/ # Navigator interface
│ └── partials/ # Reusable components
├── public/ # Static files
├── config/ # Configuration files
└── middleware/ # Custom middleware
-
Doctor
- Full access to patient medical records
- Appointment management
- Progress report creation
- Resource management
-
Patient
- Personal medical record access
- Appointment scheduling
- Communication with care team
- Resource access
-
Patient Navigator
- Patient coordination
- Resource management
- Communication facilitation
- Support service coordination
-
Caregiver
- Limited patient information access
- Appointment viewing
- Communication with care team
- Secure authentication using Passport.js
- Role-based access control
- Session management
- Password encryption
- CSRF protection
- XSS prevention
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please contact [support email/contact information]
- Healthcare professionals who provided domain expertise
- Open source community for various tools and libraries
- Contributors and testers
- Mobile application development
- Integration with hospital management systems
- Advanced analytics and reporting
- Telemedicine features
- AI-powered recommendations