Contributing to Raiken

Help us build the future of AI-powered testing. Whether you're fixing bugs, adding features, or improving documentation, every contribution matters.

Welcome Contributors!

Raiken is an open-source project built by the community, for the community. We welcome contributions from developers of all skill levels and backgrounds.

Ways to Contribute

Code Contributions

Bug fixes, new features, and improvements to the codebase

Bug fixes
New AI models
Performance improvements
UI enhancements

Documentation

Improve guides, API docs, and help others learn Raiken

Tutorial improvements
API documentation
Code examples
Translation

Community Support

Help other users and share your knowledge

Answer questions
Share examples
Write blog posts
Create videos

Testing & QA

Test new features and report bugs

Beta testing
Bug reports
Performance testing
Browser compatibility

Development Setup

Get Started in 4 Steps

Follow these steps to set up your development environment

1

Fork the repository

Create your own fork of the Raiken repository on GitHub

git clone https://github.com/your-username/raiken.git
2

Install dependencies

Install all project dependencies using npm

npm install
3

Set up environment

Create environment variables for development

cp .env.example .env.local
4

Start development

Run the development server

npm run dev

Development Workflow

Git Workflow

1

Create a branch

git checkout -b feature/your-feature
2

Make changes

Write code, tests, and documentation

3

Commit & push

git commit -m "feat: add new feature"
4

Create PR

Open a pull request on GitHub

Development Commands

Start development server

npm run dev

Run tests

npm test

Build for production

npm run build

Lint code

npm run lint

Code Guidelines

TypeScript

Type safety and best practices

Use strict TypeScript types
Prefer interfaces over types for objects
Use proper JSDoc comments
Avoid any types

React Components

Component structure and patterns

Use functional components
Implement proper error boundaries
Use custom hooks for logic
Follow accessibility guidelines

Testing

Test coverage and quality

Write unit tests for utilities
Add integration tests for features
Test error handling scenarios
Maintain test coverage above 80%

Code Style

Formatting and conventions

Use Prettier for formatting
Follow ESLint rules
Use descriptive variable names
Keep functions small and focused

Pull Request Guidelines

How to create effective pull requests

PR Checklist

Clear title and description
Link to related issues
Tests added/updated
Documentation updated
No merge conflicts
CI checks passing

Commit Convention

feat: New features
fix: Bug fixes
docs: Documentation changes
test: Test additions/updates
refactor: Code refactoring
chore: Maintenance tasks

Join the Community

GitHub Discussions

Ask questions, share ideas, and collaborate with other contributors.

Join Discussions

Discord Server

Real-time chat with the community and maintainers.

Join Discord

Office Hours

Weekly community calls with maintainers and contributors.

Learn More

Ready to Contribute?

Start by checking out our good first issues or jump into discussions. Every contribution, no matter how small, makes a difference!