Guidelines for contributing to the Traffic Simulation project hosted by ACM PES University, EC Campus.
- Python 3.x installed
- Understanding of graph theory and shortest path algorithms
- Familiarity with Git and GitHub workflow
- Fork and clone the repository:
git clone https://github.com/acmpesuecc/traffic_simulation
cd traffic_simulation- Create virtual environment:
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Create a new branch for your work:
git checkout -b feature/your-feature-nameWhen filing a bug report, include:
- Clear, descriptive title identifying the problem
- Exact steps to reproduce the issue
- Expected vs actual behavior
- Screenshots (if applicable)
- Your environment (OS, Python version)
Example:
Title: Traffic redistribution fails at node C
Steps: Run simulation from A to F, observe output at t=5
Expected: Cars redistribute according to distribution ratios
Actual: Car count becomes negative
When proposing enhancements, include:
- Clear, descriptive title
- Detailed description of the proposed feature
- Step-by-step implementation approach
- Use cases and benefits
- Similar implementations in other projects (if any)
Before submitting a PR:
- Ensure code runs without errors
- Test with multiple start/end node combinations
- Verify changes don't break existing functionality
- Follow the existing code style
PR checklist:
- Code tested locally
- Descriptive commit messages (present tense)
- No unnecessary files included
- Updated documentation (if needed)
- References related issue number
- Use descriptive variable names
- Add comments for complex logic
- Follow PEP 8 style guidelines
- Keep functions focused and modular
- Commit messages in present tense (e.g., "Add Bellman-Ford implementation")
bug- Something isn't working correctlyenhancement- New feature or improvementdocumentation- Documentation improvementsgood first issue- Beginner-friendly tasksbounty~X- Issue difficulty/points indicator
For queries or clarifications, contact:
Maintainers will:
- Review PRs within reasonable timeframe
- Provide constructive feedback
- Request changes if needed
- Merge once all requirements are met
Thank you for contributing to Traffic Simulation!