Prepare for release.
This commit is contained in:
@@ -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
@@ -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"
|
||||||
|
|||||||
Reference in New Issue
Block a user