Skip to content

Latest commit

 

History

History
150 lines (106 loc) · 4.75 KB

File metadata and controls

150 lines (106 loc) · 4.75 KB

Contributing to Repstack

Thank you for your interest in contributing to Repstack! We're excited to build an open source hypertrophy training application together with the community.

🌟 How to Contribute

Reporting Bugs

If you find a bug, please create an issue with:

  • A clear, descriptive title
  • Steps to reproduce the behavior
  • Expected behavior vs. actual behavior
  • Screenshots if applicable
  • Your environment (browser, OS, device)

Suggesting Features

We welcome feature suggestions! Please create an issue with:

  • A clear description of the feature
  • Why this feature would be useful
  • Any relevant examples or mockups
  • Consider the scope: should this be core (free) or SaaS (paid)?

Code Contributions

We welcome code contributions! Here's how to get started:

Setup Development Environment

  1. Fork the repository
  2. Clone your fork: git clone https://github.com/YOUR_USERNAME/Repstack.git
  3. Create a feature branch: git checkout -b feature/your-feature-name
  4. Make your changes
  5. Test your changes thoroughly
  6. Commit with clear messages
  7. Push to your fork
  8. Open a Pull Request

Code Guidelines

  • Keep it simple: Write clear, maintainable code
  • Test your changes: Ensure existing tests pass and add new tests for new features
  • Follow conventions: Match the existing code style
  • Document your code: Add comments for complex logic
  • Small PRs: Break large changes into smaller, focused PRs

Commit Message Format

Use clear, descriptive commit messages:

feat: Add exercise filtering by equipment
fix: Correct volume calculation for drop sets
docs: Update installation instructions
refactor: Simplify mesocycle state management
test: Add unit tests for auto-regulation logic

Documentation Contributions

Good documentation is crucial! You can help by:

  • Fixing typos or unclear explanations
  • Adding examples and tutorials
  • Creating video guides
  • Translating documentation

Exercise Content Contributions

Help build the exercise library:

  • Add new exercises with descriptions
  • Provide form cues and safety tips
  • Suggest exercise variations
  • Link to demonstration videos (properly licensed)

🤝 Community Guidelines

Code of Conduct

  • Be respectful: Treat everyone with respect and kindness
  • Be constructive: Provide helpful feedback and suggestions
  • Be patient: Remember that contributors have varying experience levels
  • Be inclusive: Welcome diverse perspectives and backgrounds

Review Process

  1. All contributions will be reviewed by maintainers
  2. We may suggest changes or improvements
  3. Once approved, your PR will be merged
  4. Your contribution will be recognized in release notes

🔍 Areas Where We Need Help

Current Priorities

  • Requirements Definition: Help define user stories and acceptance criteria
  • Architecture Design: Input on technology choices and system design
  • UI/UX Design: Create mockups and user flows
  • Research: Investigate hypertrophy training best practices
  • Documentation: Set up documentation structure

Future Needs

  • Frontend development (React/Vue/Svelte)
  • Backend development (if needed for SaaS layer)
  • PWA implementation
  • Testing and QA
  • Performance optimization
  • Accessibility improvements

📚 Learning Resources

New to open source? Check out:

New to hypertrophy training? Check out:

💡 Using GitHub Copilot

This project uses GitHub Copilot to assist with development. See .github/copilot-instructions.md for guidelines on working with Copilot on this project.

❓ Questions?

  • General questions: Use GitHub Discussions
  • Bug reports: Create an issue
  • Security issues: See SECURITY.md (coming soon)
  • Feature ideas: Create an issue with the "enhancement" label

🎯 Getting Started

Not sure where to start? Look for issues labeled:

  • good first issue - Great for newcomers
  • help wanted - We need assistance on these
  • documentation - Help improve docs
  • enhancement - New features to implement

📄 License

By contributing to Repstack, you agree that your contributions will be licensed under the MIT License.

🙏 Thank You!

Every contribution, no matter how small, helps make Repstack better for everyone. Thank you for being part of our community!


Questions about contributing? Open an issue and we'll help you get started!