To get started with a development environment
To run this in development, first you need to install dependencies
pip install -r requirements.txt
(See this tutorial if you need help)
Now you can start running commands to setup your server
Copy your local environment file, using
.env.example as an example
cp budgety/.env.example budgety/.env
First, you may need to run the database migrations:
python manage.py migrate
Then create a "superuser" to be able to login to the site. Enter in the requested info
python manage.py createsuperuser
Now you're ready to start up the server!
python manage.py runserver
127.0.0.1:8000/admin to login, then go to
127.0.0.1:8000 to view the site
For a new user you will need to assign a budget. Go to the admin page > Budgets > Budget object (0), then assign your user and save
In production, we use oauth with google, but logging in using credentials is a fine workaround for local development.
The frontend is managed separately with yarn and vue-loader
To develop the frontend, you'll need to have our frontend package manager
yarn installed (make sure to have
npm installed and run
npm install yarn -g)
Navigate to the frontend folder and install the dependencies
Start the frontend server
127.0.0.1:8080. It's important to use the same host for both in order to share cookies.
You'll have to login to the django server first before you can access the api methods.
Keep in mind this address also proxies any
api/ calls to
127.0.0.1:8000 to integrate with the Django server.
Hot reloading works out of the box, and you can develop components in the tidy