Skip to content

Latest commit

 

History

History
148 lines (104 loc) · 4.78 KB

File metadata and controls

148 lines (104 loc) · 4.78 KB

Contributing to NexusGate

Thank you for your interest in contributing to NexusGate! We're excited to have you join our community. This document outlines the process for contributing to the project and how to get started.

Table of Contents

Code of Conduct

By participating in this project, you agree to abide by our Code of Conduct. Please be respectful and constructive in your interactions with other contributors.

Getting Started

Before you begin, make sure you have:

  1. A GitHub account
  2. Git installed on your local machine
  3. Familiarity with basic Git commands
  4. Docker (for testing your changes)

Development Setup

1. Fork the Repository

Start by forking the NexusGate repository to your own GitHub account.

2. Clone Your Fork

git clone https://github.com/YOUR-USERNAME/nexusgate.git
cd nexusgate

3. Add Upstream Remote

git remote add upstream https://github.com/geektechx/nexusgate.git

4. Create a Branch

Create a branch for your feature or bugfix:

git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bugfix-name

5. Set Up Development Environment

Follow these steps to set up your local development environment:

# Install dependenices
bun install

# For backend (you may also to setup a database for testing)
bun run dev

# For frontend
bun run start

Contribution Workflow

  1. Find an Issue: Look for open issues or create a new one describing the feature or bug you want to work on.
  2. Comment on the Issue: Let others know you're working on it.
  3. Make Changes: Implement your feature or fix the bug.
  4. Test Your Changes: Ensure your changes work as expected and don't break existing functionality.
  5. Commit Your Changes: Follow the commit message guidelines.
  6. Push to Your Fork: Push your changes to your forked repository.
  7. Create a Pull Request: Submit a PR from your branch to the main NexusGate repository.

Pull Request Guidelines

When submitting a pull request:

  1. Ensure your PR addresses a specific issue. If no issue exists, create one first.
  2. Provide a clear and detailed description of the changes.
  3. Include screenshots or GIFs for UI changes.
  4. Include tests for new features or bug fixes.
  5. Make sure all tests pass.
  6. Update documentation if necessary.

Commit Message Guidelines

We follow the Conventional Commits specification for commit messages:

<type>(<scope>): <subject>

Examples:

  • feat(dashboard): add new analytics chart
  • fix(api): resolve token counting issue
  • docs(readme): update installation instructions
  • refactor(backend): improve error handling

Coding Standards

  • Follow the existing code style and conventions in the project.
  • Write clear, commented, and maintainable code.
  • Keep functions small and focused on a single task.
  • Write meaningful variable and function names.
  • Document public API methods and components.

Testing

  • Write tests for new features and bug fixes.
  • Run the existing test suite to ensure your changes don't break existing functionality.
  • For frontend changes, test across different browsers and screen sizes.

Documentation

  • Update documentation when adding or changing features.
  • Clear and concise documentation helps others understand and use your contributions.

Community

Join our community channels to get help, share ideas, and connect with other contributors:

Recognition

All contributors will be recognized in our README and Contributors list. Your contributions are greatly appreciated and help make NexusGate better for everyone!

Thank you for contributing to NexusGate! We're excited to see what you'll build with us.