Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
```markdown
# Contributing to Migratron

Thank you for considering contributing to Migratron! We welcome contributions from the community to help improve and enhance the project. Please take a moment to review this guide before you get started.

## Setting Up the Development Environment

1. **Clone the Repository**:
```bash
git clone https://github.com/jampp/migratron.git
cd migratron
```

2. **Create a Virtual Environment**:
We recommend using a virtual environment to manage dependencies.
```bash
python3 -m venv venv
source venv/bin/activate # On Windows use `venv\Scripts\activate`
```

3. **Install Dependencies**:
Install the necessary dependencies for development and testing.
```bash
pip install -r requirements.txt
pip install -r requirements-dev.txt
```

4. **Set Up Docker (Optional)**:
If you prefer using Docker, you can build the Docker image:
```bash
docker build -t migratron .
```

## Running Tests

Tests are located in the `tests` directory. To run the tests, use the following command:
```bash
make test
```
This will execute the test suite and provide coverage reports.

## Code Style Guidelines

We follow the PEP 8 style guide for Python code. Please ensure your code adheres to these guidelines. You can use tools like `flake8` to check your code:
```bash
flake8 migratron
```

Additionally, ensure your code is well-documented and includes docstrings where applicable.

## Submitting Pull Requests

1. **Fork the Repository**:
Create a personal fork of the repository on GitHub.

2. **Create a Feature Branch**:
```bash
git checkout -b feature/your-feature-name
```

3. **Commit Your Changes**:
Make sure your commit messages are descriptive and follow the conventional commit format.

4. **Push to Your Fork**:
```bash
git push origin feature/your-feature-name
```

5. **Submit a Pull Request**:
Go to the original repository on GitHub and submit a pull request from your fork.

6. **Review Process**:
Your pull request will be reviewed by project maintainers. Please be responsive to feedback and make necessary changes.

## Code of Conduct

This project adheres to a [Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers.

Thank you for your contributions and support!
```
Loading