XSpends is a attempt to make a primitive/basic yet (arguably) complete API driven system to manage a transaction system. It offers functionalities like user authentication, transaction recording, fund source tracking, and spend categorization.
- User Authentication: Secure user registration and login.
- Transaction Management: Record and manage financial transactions.
- Fund Source Management: Keep track of different financial sources.
- Expense Categorization: Organize expenses with categories and tags.
- Docker
- Helm (for Kubernetes deployments)
- Minikube (for local Kubernetes setup)
For detailed installation instructions, refer to install.md. This includes steps for Minikube setup, TiDB setup using Helm, and deploying XSpends.
Use minikube service xspends-service --url
to get the service URL for accessing the API.
Make RESTful API requests to the provided service URL. Example endpoints:
/auth/register
(POST): Register a new user./auth/login
(POST): Login for existing users./transactions
(POST/GET): Manage transactions.
Refer to the API documentation (if available) for detailed usage.
- Local Development: Use
docker-compose up
. - Testing: Execute
tests/basic_sanity.sh
for basic checks. - Rebuild and Redeploy: Instructions available in install.md.
Contributions to XSpends are welcome! Please read our contributing guidelines for details on how to contribute.
This project is licensed under the MIT License - see the LICENSE
file for details.