feat: add Movies Diary to projects and K-Suite

This commit is contained in:
2026-05-13 23:53:38 +02:00
parent d835c7c031
commit 764e419a32
2 changed files with 38 additions and 1 deletions

View File

@@ -455,6 +455,29 @@ export const projects: Project[] = [
thumbnails: ["/images/galeria_rumia.avif", "/images/galeria_rumia2.avif"],
commercial: true,
},
{
id: 24,
name: "Movies Diary",
short_description:
"Self-hosted movie logging with ActivityPub federation.",
description:
"A self-hosted, server-side rendered movie logging system with a full REST API. Built entirely in Rust with no JavaScript in the HTML interface — just HTML forms and an RSS feed.\n\n**Highlights:**\n- Immutable, append-only viewing ledger (tracks re-watches)\n- ActivityPub federation — follow remote users, broadcast reviews as federated Notes, shared inbox, paginated outbox\n- Full-text search via SQLite FTS5 or PostgreSQL tsvector + GIN\n- Background poster fetching, TMDB enrichment (cast, crew, genres, box office), image conversion to AVIF/WebP\n- File importer: CSV, TSV, JSON, XLSX from Letterboxd, IMDb, etc.\n- Dual database support: SQLite and PostgreSQL\n- Terminal UI client\n- OpenAPI documentation (Swagger UI + Scalar)\n\n**Technical details:**\n- **Architecture:** Hexagonal (Ports & Adapters) with DDD\n- **Backend:** Rust, Axum, SQLx\n- **Templates:** Askama (SSR)\n- **Event bus:** SQLite/PostgreSQL queue or NATS JetStream\n- **Federation:** ActivityPub (AP)",
category: "Web",
github_url: "https://github.com/GKaszewski/movies-diary",
visit_url: "https://movies.gabrielkaszewski.dev/",
download_url: null,
technologies: [
"Rust",
"Axum",
"SQLite",
"PostgreSQL",
"ActivityPub",
"Askama",
"NATS",
"Docker",
],
thumbnails: [],
},
{
id: 23,
name: "Pixel palette colorizer",