It's primitive now, but a good start.
|4 years ago|
|templates||4 years ago|
|webInterface||4 years ago|
|webInterfaceNoAuth||4 years ago|
|.clang-format||4 years ago|
|.gitignore||4 years ago|
|LICENSE||4 years ago|
|LazyBudgetServer.py||4 years ago|
|PasswordManager.py||4 years ago|
|ReadMe.org||4 years ago|
This is a web server and web interface for doing quick budgeting. Its goals are as follows:
Lazy: It should be easy to categorize and input new transactions
Private: No data should leave the computer
Informative: Using this app gives insight into spending habits and problems
1. Clone this repository
git clone https://github.com/makuto/tornado-authenticated-template
2. Install python dependencies
The following dependencies are required:
pip install tornado passlib bcrypt argon2_cffi
You'll want to use Python 3, which for your environment may require you to specify
pip3 instead of just
3. Generate SSL keys
cd tornado-authenticated-template/ ./Generate_Certificates.sh
This step is only required if you want to use SSL, which ensures you have an encrypted connection to the server.
4. Run the server
5. Test it
Open localhost:8888 in any web browser
If your web browser complains about the certificate, you may have to click
Advanced and add the certificate as trustworthy, because you've signed the certificate and trust yourself :). If you want to get rid of this, you'll need to get a signing authority like
LetsEncrypt to generate your certificate.
Create your account(s)
Creating accounts from the web interface
When you first run the server, the Create Account interface will automatically show up when visiting localhost:8888.
Note that this will be the only account that can be created through the web interface. If you want to let others create accounts, open AuthenticatedServer.py and set
enable_subsequent_account_creation = True. Then, anyone may visit localhost:8888/createNewAccount to create a new account.
Creating accounts from the command line
You can use
PasswordManager.py to edit file
accounts.json with hashed (and salted) passwords:
If you want to reset all accounts, simply delete
Restart your server
You should now see a Login page before being able to access any content.
Note that all login cookies will be invalidated each time you restart the server.