Thank you for considering contributing to Infrastructure Mapper!
We welcome contributions of all kinds, including bug fixes, feature requests,
documentation improvements, and more. Please follow the guidelines below to
ensure a smooth contribution process.
- Click the Fork button at the top-right corner of this repository to create
your own copy.
-
Clone your forked repository to your local machine:
git clone https://github.com/timlinux/InfrastructureMapper.git cd InfrastructureMapper
-
Create a new branch for your changes:
git checkout -b feature/your-feature-name
- Implement your changes in the appropriate files.
- Follow the coding conventions and guidelines outlined in the project.
-
Run the tests to ensure your changes don't break anything:
pytest
-
Write clear and concise commit messages:
git add . git commit -m "Add a brief description of your changes"
-
Push your branch to your forked repository:
git push origin feature/your-feature-name
- Go to the original repository and click New Pull Request.
- Provide a detailed description of your changes and link any related issues.
Please adhere to our Code of Conduct to ensure a
welcoming and inclusive environment for everyone.
- Follow the naming conventions and SQL standards outlined in the
README.md. - Write clean, readable, and well-documented code.
-
Use the following format for commit messages:
[Type] Short description of the change
Examples of types:
Fix,Add,Update,Remove.
- Ensure all tests pass before submitting your pull request.
- Add new tests for any new features or bug fixes.
-
Keywords and statements must be written in UPPER CASE.
Example:SELECT * FROM electricity_line;
- Use singular names.
Example:
electricity_line_typenotelectricity_line_types - Use lowercase with underscores (_) to separate words.
Example:
water_pointnotWaterPoint
- Names must be in lowercase.
Example:
electricity_line_conditionnotElectricityLineCondition
- Grey:
uuid,last_update,last_update_by - Black:
geometryfields (positioned above grey attributes) - Green: Foreign key fields (always positioned last)
- Blue: Constraints, associated fields, and association (junction) tables
- Start with
name(s),type,notes(in that order). - Explicitly include units for length and depth fields (default: meters).
Example:
crown_radius_mnotcrown_radius - Use amperes for current and volts for voltage.
- For the
imagefield, insert the file path as text.
If you have any questions or need assistance, feel free to reach out via
info@kartoza.com.
Thank you for contributing! 🚀