# Contributing to NeuralActivityCubic

Thank you for considering contributing to NeuralActivityCubic! We welcome contributions from the community and are grateful for your help in improving the project. This document outlines the process for contributing, from reporting bugs to submitting code.

## Table of Contents
- [How to Contribute](#how-to-contribute)
  - [Reporting Bugs](#reporting-bugs)
  - [Requesting Features](#requesting-features)
  - [Contributing Code](#contributing-code)
- [Development Workflow](#development-workflow)
  - [Forking the Repository](#forking-the-repository)
  - [Setting up the Environment](#setting-up-the-environment)
  - [Making Changes](#making-changes)
  - [Submitting Pull Requests](#submitting-pull-requests)
- [Licensing](#licensing)

## How to Contribute

### Reporting Bugs

If you encounter a bug or an issue with NeuralActivityCubic, please [submit an issue](https://github.com/Indoc-Research/NeuralActivityCubic/issues). When reporting a bug, please provide as much detail as possible, including:
- Steps to reproduce the issue.
- Expected behavior.
- Actual behavior.
- Any relevant error messages or logs.

### Requesting Features

We welcome suggestions for new features! If you have an idea for an improvement, please [open a feature request](https://github.com/Indoc-Research/NeuralActivityCubic/issues/new) and provide details about the feature, including:
- Why this feature is needed.
- How it will improve NeuralActivityCubic.
- Any relevant use cases.

### Contributing Code

We love contributions! If you'd like to fix a bug, add a feature, or improve documentation, please follow the guidelines below to ensure a smooth contribution process.

## Development Workflow

### Forking the Repository

1. Fork the NeuralActivityCubic repository to your GitHub account by clicking the "Fork" button.
2. Clone the forked repository to your local machine:
    ```
    git clone https://github.com/YourUsername/NeuralActivityCubic.git
    cd NeuralActivityCubic
    ```
### Setting up the Environment

Make sure to install all necessary dependencies to start development. You can do this with:
    ```
    pip install -r requirements.txt
    ```

### Making Changes

1. Before making any changes, make sure to open a new branch:
    ```
    git checkout -b your-feature-branch
    ```
2. Now implement your changes & verify that everything works as intended.

3. Once you´re done, commit your changes:
    ```
    git add -A
    git commit -m "Description of the feature or fix"
    ```

### Submitting Pull Requests

1. Push your changes to your forked repository:
    ```
    git push origin your-feature-branch
    ```   
2. Open a pull request on the original repository. Please provide a clear description of your changes, and link to any related issues.
3. A project maintainer will review your pull request and may ask for changes before merging - thank you!


### Licensing

NeuralActivityCubic is licensed under the AGPL-3.0 License. See the [LICENSE](https://github.com/Indoc-Research/NeuralActivityCubic/blob/main/LICENSE) file for more details. By contributing to NeuralActivityCubic, you agree that your contributions will be licensed under the
