First off, thanks for taking the time to contribute! ❤️
All types of contributions are encouraged and valued. See the Table of Contents for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us maintainers and smooth out the experience for all involved.
This project and everyone participating in it is governed by the Alian Structure API Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to conduct@alian-structure.com.
Before you ask a question, it is best to search for existing Issues that might help you. In case you have found a suitable issue and still need clarification, you can write your question in that issue. It is also advisable to search the internet for answers first.
If you still have questions, feel free to reach out via GitHub Discussions.
- Make sure that you are using the latest version.
- Check that your issue hasn't already been reported.
- Collect information about the issue to help us fix it quickly.
Use the bug report template to create a detailed issue. Include:
- A quick summary and/or background
- Steps to reproduce
- What you expected would happen
- What actually happens
- Notes (potentially including why you think this is happening)
Enhancement suggestions are tracked as GitHub issues. Create an issue and provide:
- A clear and descriptive title
- Step-by-step description of the suggested enhancement
- Current behavior vs. expected behavior
- Screenshots if applicable
- Explain why this enhancement would be useful
- Fork the repository
- Clone your fork
- Create a branch:
git checkout -b feature/your-feature-name - Make your changes
- Run tests:
npm test - Commit your changes
- Push to your fork
- Open a Pull Request
# Install dependencies
npm install
# Copy environment template
cp .env.example .env
# Start development server
npm run start:dev
# Run tests
npm run test
# Run linting
npm run lintYou can help improve documentation by:
- Adding missing descriptions
- Fixing typos and grammar
- Adding tutorials and guides
- Improving existing documentation
Use conventional commits:
feat:for new featuresfix:for bug fixesdocs:for documentation changesrefactor:for code refactoringtest:for adding testschore:for build/tooling changes
Example: feat: add new wallet authentication provider
- Follow the existing ESLint configuration
- Use TypeScript types for all functions and variables
- Write comprehensive JSDoc comments for public APIs
- Keep functions small and focused
- Write unit tests for all new features
If you're interested in becoming a maintainer, reach out to the core team! We're always looking for passionate contributors to help grow the project.
Happy coding! 🚀