Skip to content

Latest commit

 

History

History
118 lines (95 loc) · 3.17 KB

CONTRIBUTING.md

File metadata and controls

118 lines (95 loc) · 3.17 KB

Contributing to Player

Welcome Contributors! 👋

We're thrilled that you're interested in contributing to Player, an elegant offline multimedia player built with Flutter. This document provides guidelines to help you contribute effectively.

Code of Conduct

Please be respectful, inclusive, and considerate of others. We are committed to providing a welcoming and inspiring community for all.

How to Contribute

There are many ways you can contribute to Player:

1. Reporting Bugs 🐞

  • Check existing Issues to ensure the bug hasn't been reported
  • Use the bug report template
  • Provide detailed information:
    • Device specifications
    • Flutter/Dart version
    • Detailed steps to reproduce
    • Expected vs. Actual behavior
    • Screenshots or logs if possible

2. Suggesting Enhancements 💡

  • Open a new issue with a clear title and description
  • Explain the enhancement in detail
  • Provide context on why this would be valuable
  • Include potential implementation ideas if possible

3. Code Contributions 🖥️

Prerequisites

  • Flutter SDK (Latest Stable Version)
  • Android Studio or VS Code
  • Git
  • Android device or emulator

Development Setup

  1. Fork the repository
  2. Clone your fork
    git clone https://github.com/frkudn/player.git
    cd player
  3. Create a new branch for your feature
    git checkout -b feature/amazing-feature
  4. Install dependencies
    flutter pub get
  5. Run tests
    flutter test

Contribution Guidelines

  • Follow Flutter/Dart best practices
  • Maintain consistent code style
  • Write clear, commented code
  • Add/update tests for new features
  • Update documentation as needed

Commit Message Conventions

  • Use clear, descriptive commit messages
  • Format: <type>: <description>
    • Types: feat, fix, docs, style, refactor, test, chore
  • Example: feat: add lyrics display for audio files

Pull Request Process

  1. Ensure your code passes all tests
  2. Update the README.md or documentation if needed
  3. Open a pull request with:
    • Clear title
    • Detailed description of changes
    • Reference any related issues

Development Workflow

Branching Strategy

  • main: Stable release branch
  • develop: Active development branch
  • feature/: New feature branches
  • bugfix/: Bug resolution branches

Code Review Process

  • All submissions require review
  • At least one maintainer must approve the pull request
  • CI checks must pass
  • Consider performance and code quality

Reporting Security Issues

If you discover a security vulnerability, please:

  • Do NOT open a public issue
  • Email security@playerapp.com with details
  • Provide steps to reproduce
  • Do not share publicly until resolved

Community

Recognition

Contributors will be:

  • Listed in CONTRIBUTORS.md
  • Recognized in release notes
  • Potentially invited to core development team

Questions?

  • Check the FAQ
  • Open an issue for clarification
  • Join our community discussions

Thank you for helping make Player better! 🎉