Complete guide to all documentation for the Stellar Ajo project.
| Document | Purpose | Read Time |
|---|---|---|
| QUICKSTART.md | Get up and running in 5 minutes | 5 min |
| README.md | Complete project documentation | 15 min |
| PROJECT_SUMMARY.md | Detailed project overview | 10 min |
| DEVELOPMENT.md | Development workflow and debugging | 20 min |
| DEPLOYMENT.md | Production deployment guide | 20 min |
Start with QUICKSTART.md - Gets you running in 5 minutes!
pnpm install
pnpm devRead PROJECT_SUMMARY.md for architecture and features overview.
Check DEVELOPMENT.md for development workflow, debugging, and testing.
Follow DEPLOYMENT.md for production deployment steps.
- QUICKSTART.md - 5-minute setup
- README.md - Full documentation
- PROJECT_SUMMARY.md - Project overview
- DEVELOPMENT.md - Dev workflow, testing, debugging
- DEPLOYMENT.md - Production deployment
- Smart contract comments in
contracts/ajo-circle/src/lib.rs - API route documentation in code
- Component prop documentation in JSDoc
- QUICKSTART.md - 5 minutes
pnpm dev- Run server- Open http://localhost:3000
- PROJECT_SUMMARY.md - Architecture section
- README.md - Technology stack
- Review
app/api/andcontracts/directories
- DEPLOYMENT.md - Full steps
- DEVELOPMENT.md - Testing section
- Deploy smart contract to Stellar
- Deploy frontend to Vercel
- DEVELOPMENT.md - Development setup
- Review similar existing features in codebase
- Update
prisma/schema.prismaif needed - Create API route in
app/api/ - Create frontend component
- DEVELOPMENT.md - Troubleshooting section
- Check error logs
- Search GitHub issues
- Review code comments
- Open new issue if needed
stellar-ajo/
├── QUICKSTART.md # 5-min setup
├── README.md # Full docs
├── PROJECT_SUMMARY.md # Project overview
├── DEVELOPMENT.md # Dev guide
├── DEPLOYMENT.md # Deploy guide
├── DOCUMENTATION.md # This file
└── .env.example # Environment template
stellar-ajo/
├── app/ # Frontend & API
├── components/ # React components
├── lib/ # Utilities
├── prisma/ # Database schema
├── contracts/ # Smart contract
└── public/ # Static files
Traditional savings circle where members pool money and take turns receiving lump sums.
Soroban contract deployed on Stellar that manages fund escrow and automation.
A savings group defined by:
- Members
- Contribution amount
- Contribution frequency
- Number of rounds
- Rotation order (who gets paid when)
A user participating in a circle with:
- Rotation position
- Contribution history
- Payout status
- Withdrawal requests
- Next.js - React framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- shadcn/ui - Components
- Next.js API Routes - Serverless functions
- Prisma - Database ORM
- JWT - Authentication
- bcryptjs - Password hashing
- Stellar - Network
- Soroban - Smart contracts
- Rust - Contract language
- JavaScript SDK - Integration
...start the development server
pnpm devSee QUICKSTART.md
...reset the database
pnpm prisma migrate resetSee DEVELOPMENT.md
...view database content
pnpm prisma studioSee DEVELOPMENT.md
...add a new API endpoint
- Create file in
app/api/ - Implement handler
- Test with curl or Postman See DEVELOPMENT.md
...modify database schema
- Edit
prisma/schema.prisma - Run
pnpm prisma migrate dev - Update API routes if needed See DEVELOPMENT.md
...deploy to production Follow DEPLOYMENT.md step by step
...connect a wallet
- Install Freighter extension
- Create/import account
- Click "Connect Wallet"
- Sign with wallet See README.md
...test an API endpoint Use curl examples in DEVELOPMENT.md
...debug an issue Check troubleshooting in DEVELOPMENT.md
All endpoints documented in README.md#api-documentation
- POST
/api/auth/register - POST
/api/auth/login
- GET
/api/circles - POST
/api/circles - GET
/api/circles/:id - PUT
/api/circles/:id - POST
/api/circles/:id/join - POST
/api/circles/:id/contribute
- PATCH
/api/users/update-wallet
Functions available in contracts/ajo-circle/src/lib.rs:
initialize_circle()- Create circleadd_member()- Add membercontribute()- Make contributionclaim_payout()- Claim payoutpartial_withdraw()- Emergency withdrawalget_circle_state()- Query stateget_member_balance()- Query memberget_members()- List members
See DEPLOYMENT.md for deployment instructions.
All variables documented in .env.example:
NEXT_PUBLIC_STELLAR_NETWORK # testnet or mainnet
NEXT_PUBLIC_STELLAR_HORIZON_URL # Stellar API endpoint
NEXT_PUBLIC_SOROBAN_RPC_URL # Smart contract RPC
DATABASE_URL # Database connection
JWT_SECRET # Auth token secret
NEXT_PUBLIC_API_URL # API base URL
Full details in DEPLOYMENT.md
- Port conflicts → DEVELOPMENT.md
- Database errors → DEVELOPMENT.md
- Module not found → DEVELOPMENT.md
- Wallet issues → README.md
- Contract deployment → DEPLOYMENT.md
- Read relevant documentation above
- Check code comments in source files
- Review GitHub issues for similar problems
- Check troubleshooting sections in docs
- Open new issue with details and error messages
- Project Version: 1.0.0
- Node.js: 18+
- Next.js: 16.x
- Prisma: 5.x
- TypeScript: 5.x
- Stellar SDK: 11.x
Check GitHub releases for:
- Version updates
- Breaking changes
- New features
- Bug fixes
Want to contribute? See GitHub for:
- How to report issues
- How to submit pull requests
- Development guidelines
- Code of conduct
MIT License - Open source and free to use
| Resource | Link |
|---|---|
| Stellar Docs | https://developers.stellar.org/ |
| Next.js Docs | https://nextjs.org/docs |
| Prisma Docs | https://www.prisma.io/docs |
| Soroban Docs | https://developers.stellar.org/docs/smart-contracts/ |
| shadcn/ui | https://ui.shadcn.com/ |
| Tailwind CSS | https://tailwindcss.com/docs |
git clone <repo>
cd stellar-ajo
pnpm install
cp .env.example .env.local
pnpm prisma migrate dev
pnpm devSee DEPLOYMENT.md - Deploy to Stellar section
See DEPLOYMENT.md - Deploy to Vercel section
pnpm dev # Start dev server
pnpm build # Build for production
pnpm lint # Run linter
pnpm format # Format code
pnpm prisma studio # View database
pnpm prisma migrate # Run migrationsNavigation Guide Complete!
Start with QUICKSTART.md and refer back here as needed.
Questions? Check the relevant documentation file above, and if not found, open an issue on GitHub.
Last updated: March 2026