This repository has been archived on 2026-02-24 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
f90d0f2e21f0cab3cb91cbc0596494e8ca75d0cf
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 44s
REPO_DIR points to /root/rose-ash/blog, COOP_DIR to /root/coop. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Blog App
Blog and content management application for the Rose Ash cooperative platform.
Overview
This is the blog service extracted from the Rose Ash (Suma Browser) monolith. It handles:
- Blog: Ghost CMS integration for browsing, creating, and editing posts
- Auth: Magic link authentication and user account management
- Admin/Settings: Administrative interface and settings management
- Menu Items: Navigation menu item management
- Snippets: Reusable content snippet management
- Internal API: Server-to-server endpoints for cross-app data sharing
Tech Stack
- Quart (async Flask) with HTMX
- SQLAlchemy 2.0 (async) with PostgreSQL
- Redis for page caching
- Ghost CMS for blog content
Running
# Set environment variables (see .env.example)
export APP_MODULE=app:app
# Run migrations
alembic upgrade head
# Start the server
hypercorn app:app --bind 0.0.0.0:8000
Docker
docker build -t blog .
docker run -p 8000:8000 --env-file .env blog
Directory Structure
app.py # Application factory and entry point
bp/ # Blueprints
auth/ # Authentication (magic links, account)
blog/ # Blog listing, Ghost CMS integration
post/ # Individual post viewing and admin
admin/ # Settings admin interface
menu_items/ # Navigation menu management
snippets/ # Content snippet management
coop_api.py # Internal API endpoints
templates/ # Jinja2 templates
_types/ # Feature-specific templates
entrypoint.sh # Docker entrypoint (migrations + server start)
Dockerfile # Container build definition
Description
Languages
Python
62.2%
HTML
37.1%
Dockerfile
0.4%
Shell
0.3%