No description
backend | ||
deploy | ||
docs | ||
frontend | ||
.build.yml | ||
.gitignore | ||
LICENSE | ||
mkdocs.yml | ||
README.md |
toolshed
Development
git clone https://github.com/gr4yj3d1/toolshed.git
or
git clone https://git.neulandlabor.de/j3d1/toolshed.git
all following development mode commands support auto-reloading and hot-reloading where applicable, they do not need to bw restarted after changes.
Backend only
cd toolshed/backend
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python configure.py
python manage.py runserver 0.0.0.0:8000 --insecure
to run this in properly in production, you need to configure a webserver to serve the static files and proxy the
requests to the backend, then run the backend with just python manage.py runserver
without the --insecure
flag.
Frontend only
cd toolshed/frontend
npm install
npm run dev
Docs only
cd toolshed/docs
mkdocs serve
Full stack
cd toolshed
docker-compose -f deploy/docker-compose.override.yml up --build
Deployment
Requirements
- python3
- python3-pip
- python3-venv
- wget
- unzip
- nginx
- uwsgi
Installation
- Get the latest release from
https://git.neulandlabor.de/j3d1/toolshed/releases/download/<version>/toolshed.zip
orhttps://github.com/gr4yj3d1/toolshed/archive/refs/tags/<version>.zip
. - Unpack it to
/var/www
or wherever you want to install toolshed. - Create a virtual environment and install the requirements.
- Then run the configuration script.
- Configure your webserver to serve the static files and proxy the requests to the backend.
- Configure your webserver to run the backend with uwsgi.
for detailed instructions see docs.
CLI Client
Requirements
- python3
- python3-nacl
Usage Example
cli-client/toolshed-client.py --key <hex private key> --user name@example.com --host 1.2.3.4:8000 getinventory