favoritter/CHANGELOG.md
Ole-Morten Duesund 1fc42bf1b2 feat: add packaging, deployment, error pages, and project docs
Phase 7 — Polish:
- Error page template with styled 404/403/500 pages
- Error rendering helper on Renderer

Phase 8 — Packaging & Deployment:
- Containerfile: multi-stage build, non-root user, health check,
  OCI labels with build date and git revision
- Makefile: build, test, cross-compile, deb, rpm, container,
  tarballs, checksums targets
- nfpm.yaml: .deb and .rpm package config
- systemd service: hardened with NoNewPrivileges, ProtectSystem,
  ProtectHome, PrivateTmp, RestrictSUIDSGID
- Default environment file with commented examples
- postinstall/preremove scripts (shellcheck validated)
- compose.yaml: example Podman/Docker Compose
- Caddyfile.example: subdomain, subpath, and remote proxy configs
- CHANGELOG.md for release notes
- CLAUDE.md with architecture, conventions, and quick reference

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 16:34:32 +02:00

980 B

Changelog

All notable changes to Favoritter are documented here.

Unreleased

Added

  • User registration with configurable signup modes (open, approval-required, closed)
  • Favorites with description, optional URL, image upload, tags, and privacy controls
  • Tag system with autocomplete, browsing, and admin management
  • User profiles (public or limited visibility) with avatars
  • Admin panel: user management, tag management, signup requests, site settings
  • Atom feeds: global, per-user, per-tag
  • JSON and CSV import/export for data portability
  • JSON REST API under /api/v1/
  • OpenGraph meta tags for link previews
  • Argon2id password hashing
  • CSRF protection, rate limiting, security headers
  • Proxy-aware deployment (WireGuard/Tailscale support)
  • Configurable base path for subdomain and subpath deployment
  • Systemd service file with security hardening
  • Containerfile for Podman/Docker deployment
  • Makefile with cross-compilation, .deb/.rpm packaging targets