Development environment
Click the Gitpod badge to open a new development environment in Gitpod or use the information and steps below to set up a local development environment for Baby Buddy.
Requirements
- Python 3.10+, pip, pipenv
- NodeJS 18.x and NPM 8.x (NVM recommended)
- Gulp
- Possibly
libpq-dev
- This is necessary if
psycopg2
can't find an appropriate prebuilt binary.
Installation
-
Install pipenv per Pipenv installation
-
Install required Python packages, including dev packages
pipenv install --three --dev
If this fails, install libpq-dev
(e.g. sudo apt install libpq-dev
) and try again.
- Installed Node 18.x (if necessary)
nvm install 18
- Activate Node 18.x
nvm use
- Install Gulp CLI
npm install -g gulp-cli
- Install required Node packages
npm install
- Set, at least, the
DJANGO_SETTINGS_MODULE
environment variable
export DJANGO_SETTINGS_MODULE=babybuddy.settings.development
This process will differ based on the host OS. The above example is for Linux-based systems. See Configuration for other settings and methods for defining them.
- Migrate the database
gulp migrate
- Build assets and run the server
gulp
This command will also watch for file system changes to rebuild assets and restart the server as needed.
Open http://127.0.0.1:8000 and log in with the default
username and password (admin
/admin
).
Alternative: Dev Container
- Add Dev Container support to your preferred IDE: https://containers.dev/supporting
- Clone the Baby Buddy repo
- Open the cloned repo in the dev container
Run gulp
to start the Baby Buddy development server.
Debugging in VSCode
To debug in devenv + vscode/codespaces:
- Copy
.vscode/launch.template.json
as.vscode/launch.json
file like this: - Click Run -> Start Debugging (F5) and set your breakpoints in the python as desired