A corporative society app that allows users to save a fixed amount automatically every week, with the money collected by one of the members at the end of each month.
The API for this app is documented here: https://bit.ly/esusu-docs
These instructions will get a local copy of the project up and running for development and testing purposes.
- Git
- Python (3+)
- Postgres
- A Paystack Account
- Clone repo
https://github.com/danielcoker/esusu.git
- Change into the directory of the project.
- Run
cp .env.example .env
to create a copy of the environment variables. - Fill in the details of the environment varibles.
- Run
pipenv install
to install required packages. - Run
pipenv shell
to activate the virtual env. - Run
python manage.py migrate
to run migrations. - Run
python manage.py runserver
to start the development server.
Create a secret key for the Django app here: https://djecrety.ir/
The applicaton uses pytest
for testing.
Run pytest
to execute tests.
You can also add --cov
to get test coverage report along with the test results.
-
Users can create an account (register/login).
-
Users can create a savings group.
-
Users can search for public groups to join.
-
Users can join groups.
-
Users can see a list of members in their group.
-
Users can view the savings and payment list of their group.
-
Users can add their bank and card details (for savings and receiving payments).
-
The app has endpoints for initiating savings and payments due for a particular day across the app. (These services can be moved into a scheduler.)
- Django REST Framework
- Posgres
- Paystack
To contribute to this project:
- Fork the repository.
- Create a new branch for your contribution.
- Raise a pull request against the
main
branch.
This project is licensed under the MIT License.