2.8 KiB
Develop
For now Docker is a primary way of working on the repo. However dependencies are still needed to installed locally for the IDE setup.
Requirements:
Python: 3.12+ NodeJS: 22.14+ PostgreSQL: 16+ Redis: 6+
Installation
-
Check if node 22.14 or 22.13 is installed in the system:
node --version
If fails, follow installation instructions
-
Check if python 3.12 is installed in the system:
which python 3.12
If no path returned, follow installation instructions
-
Install
virtualenv
package if it's not installed.pip install --user virtualenv
-
Create a virtual environment:
virtualenv python=3.12 venv
-
Activate the virtual environment.
# Windows ➞ venv\Scripts\activate source venv/bin/activate
-
Install python packages.
pip install --requirement requirements.txt
-
Install
pre-commit
hooks.pre-commit install --install-hooks
Database Setup
-
Install PostgreSQL if not already installed.
-
Create a database and user for the application.
-
Write in the config.json the credentials
Redis Setup
-
Install Redis if not already installed.
-
Verify Redis is running.
-
Write in the config.json the credentials
File Paths Configuration
The application requires several directories for storing and serving files:
-
Make sure you have the directories with files, /data, /thumbnails, /icons:
-
Serve them with nginx or what is of your choice:
-
Configure the base url to serve from that file server by setting the following env variables:
ICONS_PREPEND BANNERS_PREPEND THUMBNAILS_PREPEND
RUN
-
Run the API dev server:
python -m src web
-
Run frontend dev server:
python -m src webpack
Git
Configure git
to store credentials:
git config credential.helper store
After the next time creds are accepted, they will be saved on hard drive
as per rules listed in man git-credential-store
and won't be asked again.
Alternatively they can be stored temporarily in memory:
git config credential.helper cache
The creds are stored as per rules in man git-credential-cache
.
IDE
IDE specific instructions.
VSCode
-
Copy
.code-workspace
file.cp \ configs/workspace.code-workspace.example \ kemono-2.code-workspace
-
Install the recommended extensions.