Budget App Server
Title under development. This is the server that powers the Budget App.
- Savings goals
- Envelopes for allocating funds
- Expense tracking
- RESTful API
- Authentication by Auth0
Technical Design Notes
The server is built with KoaJS. Authentication is provided by Auth0.
A high fidelity mockup of the client app can be viewed here. This is still under development and will probably change once I begin to build the client app.
The API specification can be found here. It was built using Postman. This is under active development as I am currently building the server. The API spec for the current release will be fully documented in the server readme (to keep this document clean and concise).
The ER diagram/ database schema can be found here. It was built in SqlDBM. This is also subject to possible changes, although I'm confident that it's basically correct and complete.
At the moment this project has yet to reach a working pre-alpha release. If you want to play with the code, then clone the repo.
git clone https://github.com/sjustintaylor/budget-app-server.git cd budget-app-server npm install
The .env file for the server needs to be created and configured to connect to a mysql compliant server with the relevant tables created. See the template .env for an example (still working on it). You will also need to create a user in the database and give it access. The CORS settings need to either match your client address or be turned off (setting it to * should work).
Assuming you've configured the .env correctly and set up a MariaDB or other MySQL compliant database, you should be good to go.
npm run serve
- Koa Trie Router
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.