Skip to content

Latest commit

 

History

History
144 lines (111 loc) · 3.62 KB

CONTRIBUTING.md

File metadata and controls

144 lines (111 loc) · 3.62 KB

Contributing to Ceylon Multi-Agent System (MAS)

Thank you for your interest in contributing to the Ceylon AI Multi-Agent System (MAS) project! We welcome contributions from the community to help make this project better. Below are some guidelines to help you get started.

Table of Contents

  1. How to Contribute
  2. Code of Conduct
  3. Development Setup
  4. Submitting Changes
  5. Style Guides
  6. Developer Guidelines

How to Contribute

  1. Fork the repository: Click the 'Fork' button at the top right corner of the repository page.
  2. Clone your fork:
    git clone https://github.com/ceylonai/ceylon
    cd ceylon
  3. Create a branch:
    git checkout -b your-feature-branch
  4. Make your changes: Develop your feature or fix.
  5. Commit your changes:
    git commit -m "Description of your changes"
  6. Push to your fork:
    git push origin your-feature-branch
  7. Create a pull request: Go to the repository page on GitHub and click 'New pull request'.

Code of Conduct

Please note that this project adheres to a Code of Conduct. By participating, you are expected to uphold this code.

Development Setup

Prerequisites

Steps

  1. Install dependencies for Rust and Python projects.
  2. Follow the Rust Development and Python Development guidelines below for detailed setup instructions.

Submitting Changes

  • Ensure that your code adheres to the project's style guides.
  • Write clear and descriptive commit messages.
  • Include tests for new features or bug fixes.
  • Ensure that all tests pass before submitting a pull request.

Style Guides

Git Commit Messages

  • Use the present tense ("Add feature" not "Added feature").
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...").
  • Limit the first line to 72 characters or less.

Rust Style Guide

  • Follow the Rust API Guidelines.
  • Ensure your code is formatted using rustfmt.
  • Use clippy to check for common mistakes and improve code quality.

Python Style Guide

  • Follow PEP 8.
  • Ensure your code is formatted using black.
  • Use flake8 to check for common mistakes and improve code quality.

Developer Guidelines

Rust Development

  1. Setup

    • Install Rust:
      curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    • Add required components:
      rustup component add clippy rustfmt
  2. Building the Project

    cargo build
  3. Running Tests

    cargo test
  4. Linting and Formatting

    • Format your code:
      cargo fmt
    • Run clippy for lint checks:
      cargo clippy

Python Development

  1. Setup

    • Install Python dependencies:
      pip install -r requirements.txt
  2. Running the Project

    python main.py
  3. Running Tests

    pytest
  4. Linting and Formatting

    • Format your code:
      black .
    • Run flake8 for lint checks:
      flake8

Thank you for contributing to the Ceylon: Multi-Agent System (MAS) project!