Getting Started
Thank you for considering contributing to Deltalytix! This guide will help you get started with the development workflow.Prerequisites
Before you begin, ensure you have:- Node.js 20+ or Bun (latest version)
- Git for version control
- PostgreSQL database access (or Supabase account)
- Basic knowledge of TypeScript and React
Required Accounts
For full development capabilities:- Supabase account (free tier available)
- Stripe account (for payment features)
- OpenAI API key (for AI features)
- Discord application (for OAuth)
Development Setup
1. Fork and Clone
First, fork the repository and clone it locally:2. Install Dependencies
Using npm:3. Environment Setup
Create a.env.local file with required variables:
4. Database Setup
Generate Prisma client and push schema:5. Run Development Server
Start the development server:Development Workflow
Creating a Feature Branch
Always create a new branch for your work:feature/- New featuresfix/- Bug fixesdocs/- Documentation updatesrefactor/- Code refactoringtest/- Adding tests
Making Changes
- Write clean code: Follow TypeScript and React best practices
- Test thoroughly: Test on both desktop and mobile
- Update translations: Add translations for any user-facing text
- Document changes: Update relevant documentation
Available Commands
Type Checking
Before submitting, ensure there are no type errors:Linting
Run ESLint to check for code issues:Submitting Changes
Commit Guidelines
Write clear, descriptive commit messages:Commit Message Format
feat:- New featurefix:- Bug fixdocs:- Documentation changesstyle:- Code style changes (formatting)refactor:- Code refactoringtest:- Adding testschore:- Build process or tool changes
Push Your Changes
Create a Pull Request
- Go to the Deltalytix repository
- Click “New Pull Request”
- Select your fork and branch
- Fill in the PR template:
- Description: What does this PR do?
- Type of change: Bug fix, feature, etc.
- Testing: How did you test it?
- Screenshots: If UI changes, include screenshots
PR Checklist
Before submitting your PR, ensure:- Code follows the project’s style guidelines
- Self-review of your own code completed
- Code is properly commented where necessary
- Documentation updated if needed
- No new warnings or errors introduced
- All translations added for new text
- Tested on desktop and mobile
- Type checking passes (
npm run typecheck) - Linting passes (
npm run lint)
Code Review Process
What to Expect
- Initial review: Maintainers will review your PR within a few days
- Feedback: You may receive requests for changes
- Discussion: Questions and suggestions in PR comments
- Approval: Once approved, your PR will be merged
Responding to Feedback
- Be open to suggestions and constructive criticism
- Make requested changes in new commits
- Respond to comments to keep the conversation going
- Ask questions if something is unclear
After Your PR is Merged
Congratulations! 🎉- Your contribution will be included in the next release
- You’ll be credited in release notes (for significant changes)
- You can delete your feature branch
Reporting Bugs
Before Reporting
- Search existing issues: Check if it’s already reported
- Reproduce the bug: Ensure it’s reproducible
- Check version: Make sure you’re on the latest version
Bug Report Template
When creating a bug report, include:Report a Bug
Create a new issue on GitHub
Feature Requests
Proposing Features
We welcome feature ideas! Use GitHub Discussions for feature requests:- Search first: Check if someone already suggested it
- Be specific: Clearly describe the feature
- Explain the use case: Why is this needed?
- Consider alternatives: Are there other ways to achieve this?
Feature Request Template
Request a Feature
Start a discussion on GitHub
Need Help?
If you’re stuck or have questions:- 💬 Ask in Discord
- 📝 Open a Discussion
- 📧 Contact the maintainers
First time contributing to open source? Don’t worry! We’re here to help. Look for issues labeled
good first issue to get started.