summaryrefslogtreecommitdiff
path: root/workspace-layout.md
blob: 6091d2a580afe88e6de8618f410166f6c3bf9c47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
---
name: workspace-layout
description: What each repo/directory under /workspace is and how they relate
metadata: 
  node_type: memory
  type: reference
  originSessionId: 0e4bffd6-5847-4b40-9037-6bfb9055e654
  modified: 2026-09-21T21:12:41.985Z
---

`/workspace` holds several of Peter's personal software projects, each its own git repo:

- **listen** — Android podcast app (`org.terst.listen`), Peter's primary active project. Replacing Pocket Casts. See its own `CLAUDE.md` for full detail (TDD workflow, quality gate, phase status, domain notes).
- **feedreader** (FeeDreader) — sibling Android RSS reader app. Separate repo, no shared module by design (see [[listen-feedreader-relationship]] if written). Only `Opml.kt` was ever transferable between the two.
- **podkit** — standalone Go CLI, turns a playlist/video URL (via yt-dlp) or an existing RSS feed into a self-hosted private podcast feed. Unrelated to Listen's own in-app YouTube support (Listen uses embedded Chaquopy/yt-dlp directly, not podkit).
- **devtools** — shared build/test/launch verification wrappers (`gradle-test`, `gradle-report`, `android-launch-check`, `android-ui`, `publish-apk`) used by both `listen` and `feedreader`. Mandatory per both repos' CLAUDE.md — never infer build/test/launch results from raw console or adb output.
- **doot** — has a `NewServiceProxy` reverse-proxy helper that podkit's README references for path-prefix stripping when podkit is served behind it.
- **can-can, lighting, scout, stash** — other personal projects, not yet explored in depth.

`local.properties` (per-repo, gitignored) points at the local Android SDK — currently `/opt/android-sdk` on the Fedora laptop.