Contributing

Development workflow, code style, and pull request guidelines

Development Workflow

Getting Started

  1. Fork the repository on GitHub
  2. Clone your fork locally
  3. Create a new branch for your feature or fix
  4. Make your changes
  5. Test your changes thoroughly
  6. Commit with clear messages
  7. Push to your fork
  8. Open a pull request

Setting Up Development Environment

# Clone the repository git clone https://github.com/YOUR_USERNAME/CryptArtistStudio.git cd CryptArtistStudio/v1 # Install dependencies npm install # Start development server npm run tauri dev

Creating a Feature Branch

# Create and switch to a new branch git checkout -b feature/your-feature-name # Or for bug fixes git checkout -b fix/bug-description

Committing Changes

Use clear, descriptive commit messages:

# Good commit message git commit -m "feat: Add keyboard shortcut for Mummy toggle (Ctrl+Shift+M)" # Bad commit message git commit -m "fixed stuff"

Code Style

TypeScript/JavaScript

Rust

CSS/Styling

Comments and Documentation

Pull Request Guidelines

Before Opening a PR

PR Title and Description

Use a clear title following this format:

feat: Add feature description fix: Fix bug description docs: Update documentation refactor: Refactor component name perf: Improve performance of feature

In the description, include:

Review Process

Merge Conflicts

If your PR has merge conflicts:

# Update your branch with latest main git fetch origin git rebase origin/main # Resolve conflicts in your editor # Then continue the rebase git rebase --continue # Force push to your branch git push --force-with-lease

Testing

Frontend Tests

# Run all tests npm test # Run tests in watch mode npm test -- --watch # Run tests with coverage npm test -- --coverage

Backend Tests

# Run all Rust tests cargo test # Run tests with output cargo test -- --nocapture # Run specific test cargo test test_name

Manual Testing

Areas for Contribution

Good First Issues

Look for issues labeled "good first issue" on GitHub - these are perfect for new contributors.

Help Wanted

Issues labeled "help wanted" are areas where maintainers would appreciate community contributions.

Documentation

Features and Improvements

Bug Fixes

Thank you for contributing! Every contribution, no matter how small, helps make CryptArtist Studio better for everyone. We appreciate your time and effort.
CryptArtist Studio Logo