Welcome to the Stellar-Save Drips Wave Contributor Guide!
Stellar-Save is a decentralized, trustless, and transparent Rotational Savings and Credit Association (ROSCA) built on Stellar Soroban smart contracts. We participate in the Drips Wave program — an innovative developer funding initiative that rewards open-source contributors for helping us build financial inclusion tools on the Stellar blockchain.
This guide explains how you can contribute, earn points, and convert those points into funding.
The Drips Wave program works on a shared reward pool model rather than a fixed exchange rate per point. This ensures fairness, collaboration, and high-quality contributions.
Each funded issue in our repository is categorized into three difficulty tiers, each carrying a fixed point reward upon completion:
| Tier | Points | Scope & Examples |
|---|---|---|
trivial |
100 Points | Documentation improvements, minor copy/UI adjustments, simple unit tests, helper methods. |
medium |
150 Points | Core helper functions, state-validation logic, and medium-complexity features (includes a 50-point complexity bonus). |
high |
200 Points | Major smart contract enhancements, complex integrations (e.g., SEP-41 tokens), security additions, and rich frontend dashboards. |
Points act as shares in the total reward budget allocated for each active Wave cycle. Your final payout is determined dynamically at the end of the Wave using the following formula:
Note
The dollar (USDC) value of a single point is dynamic. If fewer contributors participate, the value per point increases; if the wave is highly active, it remains proportional to the value of your output.
Important
KYC Requirement: To claim and withdraw your earned USDC rewards at the end of a Wave cycle, you must complete identity verification (KYC) through the Drips Wave app.
Follow this workflow to ensure your contribution is tracked, reviewed, and awarded points successfully:
graph TD
A[Browse docs/wave-ready-issues.md] --> B[Leave Comment on Issue to Claim]
B --> C[Maintainer Assigns Issue]
C --> D[Fork & Clone Repo]
D --> E[Create Feature Branch]
E --> F[Code, Format & Run Tests]
F --> G[Commit with Conventional Commits]
G --> H[Open Pull Request linked to Issue]
H --> I[PR Code Review & Updates]
I --> J[Maintainer Merges PR]
J --> K[Maintainer Resolves Issue in Drips]
K --> L[Points Awarded & Payout Distributed]
- Browse open issues on GitHub Issues labeled
wave-readyor refer to docs/wave-ready-issues.md. - Leave a comment expressing your intent to work on the issue (e.g., "I would like to claim this issue!").
- Wait for a project maintainer to officially assign you to the issue. This avoids duplicated effort.
- Fork the Stellar-Save repository and clone it locally.
- Create a clean branch from
mainusing standard naming conventions:git checkout -b feat/issue-title # For features git checkout -b fix/issue-title # For bug fixes git checkout -b docs/issue-title # For documentation git checkout -b test/issue-title # For tests
Maintain high standards of code quality. Before submitting, always ensure that formatting and tests are green:
- For Rust Smart Contracts:
cargo fmt # Enforces format standards cargo clippy -- -D warnings # Catch lints & errors cargo test -p stellar-save # Run contract tests
- For TypeScript React Frontend:
cd frontend npm run lint # Runs ESLint rules npm test run # Executes component and hook tests
- Use Conventional Commits (e.g.,
feat(contract): add validation check). The repository has Husky hooks that validate commit message formatting automatically. - Open a Pull Request (PR) from your fork to
Xoulomon/Stellar-Save:main. - CRITICAL: Link the PR to the issue by adding the closing keyword in the description:
If the PR is not properly linked to the issue, the automated Drips tracking system will not register your contribution.
Closes #<issue_number>
- A maintainer will review your code. Address any requested changes promptly by pushing new commits to your branch.
- Once approved, the maintainer will merge your PR.
- The maintainer will mark the associated issue as "Resolved" in the Drips Wave dashboard, which instantly credits the point value to your contributor profile!
Tip
Maintainer SLA: If your PR has been merged but your points have not been credited, or if a maintainer has been unresponsive for more than 24 hours on a review, open a support ticket in the Drips Discord for automated resolution.
The following issues are currently open and ready to be claimed for the active Wave. For an exhaustive breakdown and task lists, see docs/wave-ready-issues.md.
validate-max-membersProperty Tests (medium, 150 pts)get-current-timestampProperty Tests (trivial, 100 pts)calculate-current-cycleProperty Tests (medium, 150 pts)comprehensive-input-validationProperty Tests (high, 200 pts)- Group Analytics Page & Recharts Graph (
high, 200 pts) - Multi-Token Integration Test Suite (
high, 200 pts)
Need help getting started or got stuck on a Soroban smart contract error?
- Discussions: GitHub Discussions
- Telegram: @Xoulomon
- Discord: Drips Wave Contributor Support
Thank you for dedicating your time to public goods funding on Stellar! 🚀