Thanks for your interest in contributing to ResQ — the National Disaster Management Platform. This document explains how to get your development environment ready, code style and testing expectations, and the process for submitting issues and pull requests.
-
Fork the repository and clone your fork:
git clone https://github.com//resq.git cd resq
-
Install dependencies (root contains multiple subprojects — web-dashboard frontend is primary):
npm install
-
Frontend dev (web-dashboard)
cd src/web-dashboard/frontend npm install npm run dev
-
Backend dev (optional)
cd src/web-dashboard/backend npm install
npm run dev
Notes:
- Use Node 18+ and npm 9+ (or yarn). We recommend using nvm to manage Node versions.
- The frontend expects
VITE_API_BASE_URLin .env.local for local testing.
-
We use TypeScript and ESLint + Prettier. Please run linting and format before committing:
cd src/web-dashboard/frontend npm run lint npm run format
-
Keep commits focused and atomic. Use conventional commit messages when possible.
-
Unit tests live next to their projects. To run frontend tests:
cd src/web-dashboard/frontend npm test
- Work on feature branches off
mainor the current target branch:feature/.... - Open a pull request against
main(or the branch specified in the issue). Describe the purpose, list changes, and link related issues. - A PR should pass CI (lint, typecheck, build, and tests) before merging.
- Use the
.github/ISSUE_TEMPLATE/templates (bug report, feature request, security) when filing new issues.
- For security-sensitive issues, please use the security disclosure template or contact the maintainers privately via the repository's security policy.
- If you're unsure where to start, check the
good first issuelabel or ask in Issues and tag maintainers.
Thanks — your contributions help make ResQ better for everyone.