Thank you for your interest in contributing to the SuperDapp JS SDK! This document provides guidelines for contributing to the project.
-
Fork the repository
-
Clone your fork:
git clone https://github.com/your-username/superdapp-js.git cd superdapp-js -
Install dependencies:
npm install
-
Create a
.envfile with your configuration:cp .env.example .env # Edit .env with your SuperDapp API credentials
npm test # Run all tests
npm run test:watch # Run tests in watch mode
npm run test:coverage # Run tests with coveragenpm run lint # Check for linting errors
npm run lint:fix # Fix linting errors
npm run format # Format code with Prettiernpm run build # Build the project
npm run clean # Clean build directorynpm run cli -- init my-agent # Test CLI commands- Use TypeScript for all code
- Follow the existing code style
- Use meaningful variable and function names
- Add JSDoc comments for public APIs
- Write tests for new features
We follow the Conventional Commits specification:
feat:New featuresfix:Bug fixesdocs:Documentation changesstyle:Code style changesrefactor:Code refactoringtest:Test additions or modificationschore:Build process or auxiliary tool changes
Examples:
feat: add support for scheduled messages
fix: resolve message parsing issue
docs: update API documentation
-
Create a feature branch:
git checkout -b feat/your-feature-name
-
Make your changes and commit:
git add . git commit -m "feat: add your feature description"
-
Push to your fork:
git push origin feat/your-feature-name
-
Create a Pull Request with:
- Clear description of changes
- Link to related issues
- Screenshots if applicable
- Updated documentation
- Write unit tests for all new functions
- Write integration tests for API interactions
- Ensure all tests pass before submitting
- Maintain or improve code coverage
- Update README.md if needed
- Add JSDoc comments for new APIs
- Update examples if behavior changes
- Create guides for complex features
When reporting issues, include:
- Node.js version
- Operating system
- Steps to reproduce
- Expected vs actual behavior
- Relevant code snippets
- Error messages
For feature requests, please:
- Check existing issues first
- Describe the use case
- Provide examples of desired API
- Explain the benefits
- Be respectful and inclusive
- Focus on constructive feedback
- Help others learn and grow
- Follow the project's coding standards
- Check the documentation first
- Search existing issues
- Join our Discord community
- Ask questions in discussions
Releases are automated through GitHub Actions:
- Merge to
developtriggers staging deployment - Merge to
maintriggers production deployment and NPM publish - Version bumps use semantic versioning
Thank you for contributing to SuperDapp JS SDK!