122 lines
2.3 KiB
Markdown
122 lines
2.3 KiB
Markdown
# Develop
|
||
|
||
For now Docker is a primary way of working on the repo.
|
||
|
||
## Installation
|
||
|
||
1. Install `virtualenv` package if it's not installed.
|
||
|
||
```sh
|
||
pip install --user virtualenv
|
||
```
|
||
|
||
2. Create a virtual environment:
|
||
|
||
```sh
|
||
virtualenv venv
|
||
```
|
||
|
||
2. Activate the virtual environment.
|
||
|
||
```sh
|
||
# Windows ➞ venv\Scripts\activate
|
||
source venv/bin/activate
|
||
```
|
||
|
||
3. Install python packages.
|
||
|
||
```sh
|
||
pip install --requirement requirements.txt
|
||
```
|
||
|
||
4. Install `pre-commit` hooks.
|
||
|
||
```sh
|
||
pre-commit install --install-hooks
|
||
```
|
||
|
||
### Database
|
||
|
||
1. Register an account.
|
||
|
||
2. Visit [`http://localhost:5000/development`]
|
||
|
||
3. Click either seeded or random generation.
|
||
|
||
_This will start a mock import process,_ <br>
|
||
_which will also populate the database._
|
||
|
||
### Build
|
||
|
||
```sh
|
||
docker-compose build
|
||
docker-compose up --detach
|
||
```
|
||
|
||
In a browser, visit [`http://localhost:8000/`]
|
||
|
||
## Manual
|
||
|
||
> **TODO** : Write installation and setup instructions
|
||
|
||
This assumes you have `Python 3.8+` & `Node 12+` installed <br>
|
||
as well as a running **PostgreSQL** server with **Pgroonga**.
|
||
|
||
```sh
|
||
# Make sure your database is initialized
|
||
# cd to kemono directory
|
||
|
||
pip install virtualenv
|
||
virtualenv venv
|
||
|
||
# Windows ➞ venv\Scripts\activate
|
||
source venv/bin/activate
|
||
|
||
pip install \
|
||
--requirement requirements.txt
|
||
|
||
cd client \
|
||
&& npm install \
|
||
&& npm run build \
|
||
&& cd ..
|
||
```
|
||
|
||
## Git
|
||
|
||
Configure `git` to store credentials:
|
||
|
||
```sh
|
||
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:
|
||
|
||
```sh
|
||
git config credential.helper cache
|
||
```
|
||
|
||
The creds are stored as per rules in `man git-credential-cache`.
|
||
|
||
## IDE
|
||
|
||
_IDE specific instructions._
|
||
|
||
### VSCode
|
||
|
||
1. Copy `.code-workspace` file.
|
||
|
||
```sh
|
||
cp \
|
||
configs/workspace.code-workspace.example \
|
||
kemono-2.code-workspace
|
||
```
|
||
|
||
2. Install the recommended extensions.
|
||
|
||
[`http://localhost:5000/development`]: http://localhost:5000/development
|
||
[`http://localhost:5000/`]: http://localhost:5000/
|
||
[`http://localhost:8000/`]: http://localhost:8000/
|