Contributing

We welcome contributions from the community! This guide will help you get started with contributing to the Balinese Calendar project.

Getting Started

Prerequisites

  • Rust 1.86.0 or later
  • Git
  • GitHub account

Fork and Clone

# Fork the repository on GitHub

# Clone your fork

git clone https://github.com/YOUR_USERNAME/balinese-calendar.git

cd balinese-calendar

# Add upstream remote

git remote add upstream https://github.com/SHA888/balinese-calendar.git

Development Workflow

Create a Feature Branch

git checkout -b feature/your-feature-name

Make Your Changes

Follow the project's code style and conventions. Run tests to ensure your changes don't break anything:

cargo test

Commit and Push

git add .

git commit -m "feat: describe your changes"

git push origin feature/your-feature-name

Create a Pull Request

Go to the GitHub repository and create a pull request from your feature branch to the main branch. Include a clear description of your changes.

Code Style

  • Follow Rust naming conventions
  • Use cargo fmt to format your code
  • Run cargo clippy to check for common mistakes
  • Write clear, descriptive commit messages

Testing

All contributions should include tests. Run the test suite before submitting:

cargo test --all-features

Questions?

Feel free to open an issue on GitHub if you have questions or need clarification. We're here to help!