These instructions will help you set up a development version of the dashboard.
Keywords: quickstart, installation
Setup your system to run this software using your favourite package manager.
MacOS (brew)
brew install git python3 direnv
Debian Linux (apt)
apt-get install git python3 direnv
Redhat/CentOS (yum)
yum install git python3 direnv
Or download and install each package separately:
- make (required, pre-installed on most systems)
- git (required, download and install)
- python3 (required, download and install, 3.6 or higher)
- direnv (recommended, download and install, then follow setup instructions, see Direnv section below)
- Docker (recommended, follow instructions to install.)
- ShellCheck (recommended, follow instructions to install
Then set up direnv, the right command depends on your shell:
BASH Add the following line at the end of the ~/.bashrc file:
eval "$(direnv hook bash)"
Make sure it appears even after rvm, git-prompt and other shell extensions that manipulate the prompt.
ZSH Add the following line at the end of the ~/.zshrc file:
eval "$(direnv hook zsh)"
FISH Add the following line at the end of the ~/.config/fish/config.fish file:
eval (direnv hook fish)
TCSH Add the following line at the end of the ~/.cshrc file:
eval `direnv hook tcsh`
In a directory of your choosing, download the software and enter the directory:
git clone --recursive https://https://github.com/internetstandards/Internet.nl-dashboard && cd Internet.nl-dashboard/
Running make
once to create a development Virtualenv and setup the App and its dependencies. Running make
without arguments by default also runs basic checks and tests to verify project code quality.
make
After completing successfully Web Security Map development server is available to run:
make run
If you want to run the frontend, or a worker, or the broker, run:
make run-frontend
Now visit the website and/or the admin website at http://127.0.0.1:8000 (credentials: dashboard_admin:admin).
To prepare the shell environment for local development. This way you can run the 'dashboard' command.
direnv allow
After completing successfully Dashboard is available to run. For example, to show a list of commands:
dashboard help
To create your first user:
dashboard createsuperuser
If your shell support tab completion you can get a complete list of supported commands by tabbing make
:
make <tab><tab>
Python dependencies are managed using pip-tools. See requirements.in
and requirements-dev.in
.
For convenience the following command can be used to update all Python dependencies (within their version boundaries):
make update_requirements
The dependency on Web Security Map is version pinned by a Git SHA in the Websecmap Gitlab repo. The following command will lookup the SHA for the current master in Gitlab, update the requirements.in
file, update the dependencies, and even commit everything to Git.
make update_requirement_websecmap
During installation mac users might get the following error, due to not having xcode installed or updated.
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
You can update / install xcode tools with the following command:
xcode-select --install
While docker is installed using brew in prior steps, you probably want to have a gui controlling docker.
Docker for mac can be downloaded here: https://download.docker.com/mac/stable/Docker.dmg
You can also visit the docker website and get the link using the time tested Oracle(tm) download strategy, here: https://hub.docker.com/editions/community/docker-ce-desktop-mac