Skip to main content

Contributing Guidelines

Thank you for your interest in contributing to OpenATS.

OpenATS is an open-source Applicant Tracking System built and maintained by the community. Whether you're fixing bugs, improving documentation, designing new features, or suggesting ideas, your contributions are welcome.

Ways to Contribute

You can contribute to OpenATS in several ways:

  • Report bugs
  • Suggest new features
  • Improve documentation
  • Submit code improvements
  • Fix existing issues
  • Review pull requests
  • Share feedback and ideas

Before You Start

Before creating a new issue or pull request:

  1. Search existing issues and discussions.
  2. Check if the topic has already been reported.
  3. Provide as much context as possible.
  4. Be respectful and constructive.

Reporting Bugs

If you discover a bug, please create a GitHub Issue.

When reporting a bug, include:

  • A clear description of the issue
  • Steps to reproduce the problem
  • Expected behavior
  • Actual behavior
  • Screenshots or logs if available
  • Environment details

Requesting Features

Feature requests are welcome.

When suggesting a feature:

  • Clearly describe the problem
  • Explain the proposed solution
  • Describe the expected benefit
  • Include mockups or examples when possible

Development Workflow

  1. Fork the repository.
  2. Clone your fork locally.
  3. Create a new branch.
git checkout -b feature/your-feature-name
  1. Make your changes.
  2. Test your changes.
  3. Commit your work.
git commit -m "feat: add candidate filtering"
  1. Push your branch.
git push origin feature/your-feature-name
  1. Open a Pull Request.

Pull Request Guidelines

When submitting a Pull Request:

  • Keep changes focused on a single feature or fix
  • Follow existing coding conventions
  • Write meaningful commit messages
  • Update documentation when necessary
  • Ensure the application builds successfully

Code Style

To maintain consistency across the project:

  • Follow existing project patterns
  • Use descriptive variable and function names
  • Keep code readable and maintainable
  • Avoid unnecessary complexity

Community Guidelines

We aim to maintain a welcoming and collaborative community.

Please:

  • Be respectful
  • Provide constructive feedback
  • Help other contributors
  • Encourage open discussion

Need Help?

If you have questions, need guidance, or want feedback on an idea, start a GitHub Discussion or open an issue.

We appreciate every contribution that helps improve OpenATS.