Prepare for release.

This commit is contained in:
2026-08-17 20:44:39 +00:00
parent ae19dc58b1
commit ea4f14c80b
2 changed files with 31 additions and 42 deletions
+3 -25
View File
@@ -1,27 +1,5 @@
# Pagerite # Pagerite
A single-user CMS/blog. FastAPI serves HTML rendered in Python with A single-user CMS/blog. FastAPI serves HTML rendered in Python with html5tagger,
html5tagger, content is persisted in a kanta database and rendered on content is persisted in a kanta database and rendered on the fly per request.
the fly per request. Vue is used only for interactive bits (the editing Vue is used only for the interactive editing tools, not for the public pages.
tools), not for the public pages.
## Running
```sh
uv run pagerite # serves the built frontend
uv run scripts/devserver.py # dev mode with auto reloads (no build needed)
```
The database lives in `pagerite.kantadb` in the working directory
(`PAGERITE_DB` overrides). On startup, demo pages from `pagerite/seed.py`
are added only if missing.
## Editing
Click the 🖊️ pen on any page: the article pen opens the page editor
(Markdown with live server-rendered preview over a WebSocket), the banner
pen opens the site editor (site brand, banner HTML, and the page
structure tree). Everything saves immediately — no save buttons.
See `docs/design-principles.md` for the design and `AGENTS.md` for the
development conventions.
+28 -17
View File
@@ -1,9 +1,20 @@
[build-system]
requires = [
"hatchling>=1.25.0",
"hatch-vcs>=0.4.0",
]
build-backend = "hatchling.build"
[project] [project]
name = "pagerite" name = "pagerite"
description = "A single-user CMS/blog: FastAPI + kanta, Vue only for editing tools" dynamic = ["version"]
description = "A modern website and Content Management System."
authors = [
{ name = "Leo Vasanko" },
]
keywords = ["cms", "blog", "fastapi", "markdown"]
readme = "README.md" readme = "README.md"
requires-python = ">=3.14" requires-python = ">=3.14"
dynamic = ["version"]
dependencies = [ dependencies = [
"blake3>=1.0.9", "blake3>=1.0.9",
"fastapi-vue>=1.3.1", "fastapi-vue>=1.3.1",
@@ -13,28 +24,28 @@ dependencies = [
"markdown-it-py>=4.2.0", "markdown-it-py>=4.2.0",
"mdit-py-plugins>=0.6.1", "mdit-py-plugins>=0.6.1",
"pygments>=2.20.0", "pygments>=2.20.0",
"tracerite>=2.6.4",
] ]
[project.scripts] [project.scripts]
pagerite = "pagerite.__main__:main" pagerite = "pagerite.__main__:main"
[build-system] [project.urls]
requires = ["hatchling", "hatch-vcs"] Repository = "https://git.zi.fi/LeoVasanko/pagerite"
build-backend = "hatchling.build"
[tool.hatch.version]
source = "vcs"
[tool.hatch.build]
packages = ["pagerite"]
artifacts = ["pagerite/frontend-build"]
only-packages = true
[tool.hatch.build.targets.sdist.hooks.custom]
path = "scripts/fastapi-vue/buildhook.py"
[dependency-groups] [dependency-groups]
dev = [ dev = [
"httpx>=0.28.1", "httpx>=0.28.1",
] ]
[tool.hatch.version]
source = "vcs"
[tool.hatch.build.targets.wheel]
packages = ["pagerite"]
[tool.hatch.build]
artifacts = ["pagerite/frontend-build"]
only-packages = true
[tool.hatch.build.targets.sdist.hooks.custom]
path = "scripts/fastapi-vue/buildhook.py"