Gulp command reference
Definitions
Baby Buddy's Gulp commands are defined in gulpfile.js
.
Baby Buddy's management commands are defined in babybuddy/management/commands
.
Commands
gulp
Executes the build
and watch
commands and runs Django's development server.
This command also accepts the special parameter --ip
for setting the
server IP address. See gulp runserver
for details.
build
Creates all script, style and "extra" assets and places them in the
babybuddy/static
folder.
docs:build
Builds the documentation site in a local directory (site
by default).
docs:deploy
Deploys the documentation site to GitHub Pages.
docs:watch
Runs a local server for the documentation site reloading whenever documentation
sites files (in the docs
directory) as modified.
clean
Deletes all build folders and the root static
folder. Generally this should
be run before a gulp build
to remove previous build files and the generated
static assets.
collectstatic
Executes Django's collectstatic
management task. This task relies on files in
the babybuddy/static
folder, so generally gulp build
should be run before
this command for production deployments. Gulp also passes along
non-overlapping arguments for this command, e.g. --no-input
.
Note: a SECRET_KEY
value must be set for this command to work.
compilemessages
Executes Django's compilemessages
management task. See django-admin compilemessages
for more details about other options and functionality of this command.
coverage
Create a test coverage report. See .coveragerc
for default settings information.
extras
Copies "extra" files (fonts, images and server root contents) to the build folder.
fake
Adds some fake data to the database. By default, fake
creates one child and
31 days of random data. Use the --children
and --days
flags to change the
default values, e.g. gulp fake --children 5 --days 7
to generate five fake
children and seven days of data for each.
format
Formats Baby Buddy's code base using black. Run this before commits to ensure linting will pass!
generateschema
Updates the openapi-schema.yml
file in the project root based on current API functionality.
lint
Executes Python and SASS linting for all relevant source files.
makemessages
Executes Django's makemessages
management task. See django-admin makemessages
for more details about other options and functionality of this command. When
working on a single translation, the -l
flag is useful to make message for
only that language, e.g. gulp makemessages -l fr
to make only a French
language translation file.
makemigrations
Executes Django's makemigrations
management task. Gulp also passes along
non-overlapping arguments for this command.
migrate
Executes Django's migrate
management task. In addition to migrating the
database, this command creates the default admin
user. Gulp also passes along
non-overlapping arguments for this command.
reset
Resets the database to a default state with one fake child and 31 days of fake data.
runserver
Executes Django's runserver
management task. Gulp passes non-overlapping
arguments for this command.
A special parameter, --ip
, is also available to set the IP for the server.
E.g., execute gulp runserver --ip 0.0.0.0:8000
to make the server available to
other devices on your local network.
scripts
Builds and combines relevant application scripts. Generally this command does
not need to be executed independently - see the build
command.
styles
Builds and combines SASS styles in to CSS files. Generally this command does
not need to be executed independently - see the build
command.
test
Executes Baby Buddy's suite of tests.
Gulp also passes along non-overlapping arguments for this command, however
individual tests cannot be run with this command. python manage.py test
can be
used for individual test execution.
updateglyphs
Downloads generated glyph font files data from Fonttello
based on config.json
file. This
only needs to be run after making changes to the config file.
updatestatic
Rebuilds Baby Buddy's /static
folder by running the following commands in
order:
Execute and commit changes made by this command whenever changing Baby Buddy's frontend code (SASS, JS, etc.).