First off, thank you for considering contributing to Smasage! It's people like you that make Smasage such a great tool.
- Check the issues to see if it has already been reported.
- If not, create a new issue. Clearly describe the bug, include steps to reproduce, and specify your environment.
- Open a new issue with the tag "enhancement".
- Explain the feature and how it would benefit users.
- Fork the repo and create your branch from
main. - If you've added code that should be tested, add tests.
- Ensure the test suite passes (
npm testorcargo test). - Make sure your code lints.
- Issue a pull request!
/frontend: Next.js application (TypeScript + Vanilla CSS)./agent: Node.js backend using OpenClaw./contracts: Soroban smart contracts in Rust.
main: Production-ready code.development: Integration branch for features.feature/*: Specific feature development.
- TypeScript: We follow standard ESLint configurations.
- CSS: Use Vanilla CSS. Focus on maintaining the premium, dark-themed aesthetic.
- Rust: Use
cargo fmtbefore committing.
- Use the imperative mood ("Add feature" not "Added feature").
- Keep the subject line under 50 characters.
We are committed to providing a friendly, safe, and welcoming environment for all, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality.
Join our community or open an issue for discussion!