OutbreakX is an open-source platform designed for infectious disease surveillance. It utilizes geospatial data to track and visualize disease outbreaks in real time, aiding public health efforts with detailed, accurate, and up-to-date location-based insights. The platform leverages ExpressJS, NodeJS, ReactJS, PostgreSQL with PostGIS, and OpenStreetMaps to enable efficient data collection, analysis, and visualization of infectious disease patterns.
- Real-Time Outbreak Tracking: Monitor infectious disease outbreaks with real-time data and visualizations.
- Geospatial Analysis: Powered by PostGIS, OutbreakX enables precise mapping and spatial analysis of disease data.
- User-Friendly Interface: A React-based frontend provides a smooth, responsive experience.
- Open Data Integration: Integrates OpenStreetMaps for comprehensive mapping capabilities.
- API Access: Node.js backend with Express allows seamless access to data for further analysis.
- Frontend: ReactJS, leafletjs, OpenStreetMaps
- Backend: ExpressJS, NodeJS
- Database: PostgreSQL with PostGIS extension for geospatial data
- Monorepo Management: Turborepo, pnpm
Ensure you have the following tools installed:
- Node.js (>= 14.x)
- pnpm (Package manager, installation instructions here)
- PostgreSQL (with PostGIS extension)
-
Clone the repository:
git clone https://github.com/SixthFlow-Reserach-OS/OutbreakX.git cd OutbreakX
-
Install dependencies:
pnpm install
-
Set up PostgreSQL and PostGIS:
- Ensure PostgreSQL is running and initialize a database for OutbreakX.
- Enable PostGIS on the database. For example:
CREATE EXTENSION postgis;
-
Configure Environment Variables:
- Create a
.env
file in the root directory and add necessary environment variables (e.g., database credentials, API keys).
- Create a
To start the frontend workspace:
pnpm --filter frontend start
To start the backend workspace:
pnpm --filter backend dev
To run both frontend and backend together using Turborepo:
turbo run dev
Note: If you encounter any errors, please check the Turborepo configuration or the
package.json
files in individual workspaces for any issues.
We welcome contributions! Please read our Contributing Guidelines for details on the process for submitting pull requests and reporting issues.
Thank you for your interest in contributing during Hacktoberfest! We’re excited to have contributors from around the world join us in building a platform that can make a real impact in public health.
- Sign Up for Hacktoberfest: Go to the Hacktoberfest website and register to have your contributions counted.
- Browse Issues: Check out the Issues labeled with
hacktoberfest
,good first issue
, orhelp wanted
for tasks suited for all experience levels. - Get Started:
- Fork this repository and clone it locally.
- Work on the issue, following our contribution guidelines.
- Once ready, open a pull request for review.
- Quality Contributions: To ensure meaningful contributions, please avoid making low-quality PRs. PRs that are spammy or unrelated will be marked as invalid.
- Documentation is Important: Contributions to documentation, adding tests, or improving the code structure are highly appreciated.
- Follow the Code of Conduct: Our Code of Conduct outlines the standards we expect. Please ensure all interactions are respectful and constructive.
By participating in Hacktoberfest with OutbreakX, you’re helping to create a tool for tracking infectious disease outbreaks, benefiting both local and global communities. This is a chance to make an impact with open-source contributions that really matter.
Thank you for being part of this effort, and happy coding!