Thank you for your interest in contributing! This document provides guidelines for contributing to the Fish Cost Calculator project.
- Open a GitHub issue with the
buglabel - Include steps to reproduce, expected behavior, and actual behavior
- Include browser/OS information if relevant
- Open a GitHub issue with the
enhancementlabel - Describe the use case and how it would benefit users
We're always looking to expand our species database. To contribute yield data:
- Source your data - It must come from a reputable source (scientific studies, NOAA, state fisheries agencies)
- Format your data - Follow the structure in
app/src/data/fish_data_v3.js:"Species Name": { scientific_name: "Genus species", category: "Category", conversions: { "Round → D/H-On": { yield: 88, range: [82, 94] }, // ... more conversions } }
- Cite your source - All data must include attribution
- Submit a PR - Include the source in your PR description
- Fix typos, improve clarity, add examples
- Translate documentation to other languages
# Fork and clone the repo
git clone https://github.com/YOUR_USERNAME/Fish_Cost_Calculator.git
# Create a feature branch
git checkout -b feature/your-feature-name
# Make your changes and test locally
cd app && npm install && npm run dev
cd ../server && npm install && node server.js- Use consistent indentation (2 spaces)
- Write descriptive commit messages
- Add comments for complex logic
- Test your changes before submitting
- Update documentation if needed
- Ensure the app runs without errors
- Update the CHANGELOG.md (see below)
- Create a PR with a clear description of changes
- Wait for review
We follow the Keep a Changelog format. For every PR with user-facing changes:
- Add entries under
[Unreleased]inCHANGELOG.md - Use the appropriate category:
Added- New featuresChanged- Changes to existing functionalityFixed- Bug fixesRemoved- Removed featuresSecurity- Security fixesData- Fish species/yield data updates
- Write in past tense: "Added user authentication" (not "Add user authentication")
- Link to PRs/issues when relevant:
- Fixed login bug ([#123](link)) - Be descriptive but concise: Help users understand what changed and why it matters
Example:
## [Unreleased]
### Added
- Export calculations to CSV format
### Fixed
- Calculator rounding errors for small yieldsWhen we create a new release, maintainers will move entries from [Unreleased] to a new version section.
- Be respectful and inclusive
- Focus on constructive feedback
- Remember we're all here to support the fishing community
Open an issue with the question label or reach out to the maintainers.