diff options
| author | Danilo M. <danix@danix.xyz> | 2026-05-03 10:58:46 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-05-03 10:58:46 +0200 |
| commit | 3f23288296c70ab619cfd100a70b900a019b5f7e (patch) | |
| tree | 82d5aca1e0952cdf58e0fc3e2c2fab50dd7d094a /HANDOFF.md | |
| parent | 7ca865ee29ca73373349e3a82f783877e4d51ae8 (diff) | |
| download | publisher-3f23288296c70ab619cfd100a70b900a019b5f7e.tar.gz publisher-3f23288296c70ab619cfd100a70b900a019b5f7e.zip | |
chore: add CLAUDE.md, HANDOFF.md, design spec, implementation plan, frontmatter fixes
Diffstat (limited to 'HANDOFF.md')
| -rw-r--r-- | HANDOFF.md | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/HANDOFF.md b/HANDOFF.md new file mode 100644 index 0000000..07b13a6 --- /dev/null +++ b/HANDOFF.md @@ -0,0 +1,18 @@ +Who this is for: + Danix is a developer and blogger running a bilingual (IT/EN) Hugo site at danix.xyz. He is building a PyQt6 desktop GUI called my-publisher to centralize his blog publishing workflow. + +What we covered: + We went through the full brainstorming and design process for my-publisher, including visual mockups of the app layout (sidebar with grouped sections, article list with IT/EN tabs, article detail panel). We settled on a PyQt6 single-process architecture with QThread/QProcess for + async ops. We defined all features: article management with translation status indicators, a dedicated "Senza Traduzione" sidebar entry as a worklist, article detail panel with frontmatter display + markdown preview + action buttons, frontmatter editor with type dropdown (5 fixed + types: Life/Photo/Link/Quote/Tech), translation view with streaming log from transart.py, git ops panel, hugo server panel, taxonomy manager (IT/EN tag pairs), media upload to static/uppies/YYYY/MM/, and git-based soft-delete with restore. We wrote the full design spec and a 20-task implementation plan, then began subagent-driven implementation. + +What was confirmed: + App layout: sidebar with groups CONTENUTO / WORKFLOW / DEPLOY + QStackedWidget content area. Blog repo is at /home/danix/Programming/GIT/danix.xyz-hacker-theme, translation script at /home/danix/bin/transart.py, config stored at ~/.config/my-publisher/config.toml. Git branches: master = staging, production = live via post-receive hook. Hugo frontmatter uses TOML delimited by +++ (not YAML). Translation pairs matched by slug across content/it/ and content/en/. Media served from /uppies/YYYY/MM/. ARTICLE_TYPES = ["Life", "Photo", "Link", "Quote", "Tech"]. + Design spec at docs/superpowers/specs/2026-05-01-my-publisher-design.md. Implementation plan at docs/superpowers/plans/2026-05-01-my-publisher.md. + +Still in progress: + Implementation is underway via subagent-driven development. Tasks 1-4 are complete and committed (scaffold, config module, data models, frontmatter parser). Tasks 5-20 are pending. The /init command was just run and produced CLAUDE.md. The code quality review for Task 4 (frontmatter parser) was interrupted before it completed — that review was in flight when the handoff was triggered. + +Next steps: + Resume subagent-driven development from Task 5 (taxonomy module). Before starting, optionally run the interrupted Task 4 code quality review (git range ba5438a..b4d3b52). Then proceed in order: Task 5 taxonomy, Task 6 article scanner, Task 7-9 workers, Task 10 main window, Tasks + 11-20 UI components. Use the plan at docs/superpowers/plans/2026-05-01-my-publisher.md and follow the subagent-driven-development skill for each task (implementer subagent, then spec review, then code quality review before marking complete).
\ No newline at end of file |
