23c8e4c refactor: attach sub commands to the root command
~loges pushed to ~loges/poaster git
Minimal, libre bulletin board for posts.
You can see a simple demo of poaster here.
Install package:
pip install poaster
Initialize application:
poaster init
Add a user:
poaster users add
Launch application server:
poaster run
You can configure parts of the application in the shell environment. Here's an example .env
:
# Logging
LOG_LEVEL="info"
# Database
DB_PATH="/./poaster.db"
# Security
SECRET_KEY="<generated-when-initializing-app>"
SECRET_KEY_N_BYTES=32
ALGORITHM="HS256"
# Theming
TITLE="poaster"
COLOR_DANGER="#FF595E"
COLOR_INFO="#1982C4"
COLOR_PRIMARY="#6A4C93"
COLOR_SUCCESS="#8AC926"
COLOR_WARINING="#FFCA3A"
The easiest way to develop locally with poaster
is to use hatch. With hatch
, you will have access to important helper scripts for running locally, linting, type-checks, testing, etc.
Lint and check types with:
hatch run check
Format code with:
hatch run format
Run test suite and report coverage with:
hatch run cov
To upgrade the local database to latest schema, run:
hatch run db:upgrade
Now that the tables are created, you can add fixtures:
hatch run db:fixtures
If you add or update a table, you can generate a migration script by running:
hatch run db:migration
If the migration script wasn't generated, check to see if you imported the model to env.py.
Run the application server locally with:
hatch run dev
The server should reload on changes to the source code.
poaster
is distributed under the terms of the AGPLv3 license.