This document outlines our guidelines and best practices for contributing to the Titanic Survivor Prediction Application codebase. This is an internal document for our team members and our AI system – it is not intended for public release.
- Use the format:
type(scope): subject- Example:
feat(auth): add JWT authentication endpoint
- Example:
- Types include, but are not limited to:
featfor new featuresfixfor bug fixesrefactorfor code improvements without changing behaviordocsfor documentation changeschorefor non-functional tasks (e.g. dependency updates)
- Protected Main Branch:
- Do not commit directly to the main branch.
- Dev Branch:
- Use the
devbranch for integrating ongoing work.
- Use the
- Feature Branches:
- Create a separate branch for each new feature or fix (e.g.,
feat/login,fix/api-timeout). - Merge feature branches into
devvia a pull request with appropriate reviews.
- Create a separate branch for each new feature or fix (e.g.,
- Ensure pull requests (PR) include a brief description of the changes.
- Reference any related issues or tasks.
- PRs must pass all automated tests and code style checks before merging.
- Request team reviews to maintain code quality and adherence to guidelines.
- Write well-commented, production-grade code.
- Follow the established coding standards (e.g., PEP 8 for Python, consistent style for TypeScript/React).
- Update inline documentation and READMEs where necessary.
- Use our internal communication channels (aka. team/random_iceberg WhatsApp group) for any questions or clarifications.
- Regularly sync with the team during standups and code reviews.
- Document any significant changes or decisions in your PRs and the project documentation.
By following these guidelines, we maintain a clean, organized, and efficient development environment that supports rapid, iterative improvements.
Happy coding!