A web server for doing quick budgeting
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 
 
Macoy Madson 4a3b96598e Basic charting and parsing hooked up 11 meses atrás
templates Initial commit: added login server setup 11 meses atrás
webInterface Basic charting and parsing hooked up 11 meses atrás
webInterfaceNoAuth Basic charting and parsing hooked up 11 meses atrás
.clang-format Basic charting and parsing hooked up 11 meses atrás
.gitignore Initial commit: added login server setup 11 meses atrás
LICENSE Initial commit 11 meses atrás
LazyBudgetServer.py Basic charting and parsing hooked up 11 meses atrás
PasswordManager.py Initial commit: added login server setup 11 meses atrás
ReadMe.org Initial commit: added login server setup 11 meses atrás

ReadMe.org

Lazy Budget

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

    Setup

    Directions

    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 pip.

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

python3 AuthenticatedServer.py

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.

Creating accounts

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:

python3 PasswordManager.py

If you want to reset all accounts, simply delete accounts.json.

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.