We appreciate your interest in contributing to Civix!
Civix aims to foster civic engagement and community collaboration, and we welcome contributors from all backgrounds.
- Reporting bugs or issues
- Suggesting new features or improvements
- Submitting bug fixes or new code
- Updating or adding to the documentation
- Providing UI/UX suggestions or design tweaks
-
Fork the repository
-
Clone the repository:
git clone https://github.com/HarshS16/Civix.git
cd Civixgit clone https://github.com/Harshs16/civix.git
- Set up the project.
Prerequisites Node.js and npm PostgreSQL
Before you start, make sure you have the following installed:
- Clone the repository:
- Install dependencies:
npm install
- Database Setup: Create a new database for Civix:
createdb civixEdit your configuration (typically a .env) to connect to your Postgres database:
DB_NAME=civix
DB_HOST=localhost
DB_PORT=5432
DB_USER=your_username
DB_PASSWORD=your_pass- Running the Application: Start the application in development:
npm start- Always branch out from
main:
git checkout -b feat/your-feature-name- Use these prefixes for your branches:
| Type | Prefix |
|---|---|
| Feature | feat/ |
| Fix | fix/ |
| Docs | docs/ |
| Chore | chore/ |
Use Conventional Commits:
git commit -m "feat(component): add navbar component"-
Ensure your PR includes a clear title and description.
-
Link to any relevant issues.
-
Add screenshots or demos if applicable.
-
PRs should:
- Pass lint and formatting checks
- Be reviewed by at least one maintainer
- Be rebased or merged cleanly with
main
-
Open an [issue]https://github.com/HarshS16/Civix/issues/new/choose
-
Choose Bug Report template
-
Include:
- Steps to reproduce
- Expected vs actual behavior
- Screenshots or logs if helpful
-
Open an [issue]https://github.com/HarshS16/Civix/issues/new/choose
-
Choose Feature Request template
-
Describe:
- The problem you're solving
- Why it's important
- Your proposed solution
Before submitting your pull request, please ensure the following:
- Clear title and description that explain what the PR does
- Follows the branching strategy (
feat/,fix/, etc.) and uses Conventional Commits - Code is well-formatted
- Includes tests or relevant usage examples, if applicable
- All new/updated components are documented
- Screenshots/demos included (for UI changes)
- Linked to a related issue (if one exists)
- PR is up-to-date with the
mainbranch (git pull origin mainbefore pushing) - Ready for review: tagged with appropriate labels (e.g.,
enhancement,bug,docs) - Reviewed and approved by at least one maintainer
We follow the Contributor Covenant Code of Conduct. Be respectful, inclusive, and collaborative in all contributions.
Let’s build something great together!