summaryrefslogtreecommitdiff
path: root/ROADMAP.md
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-03-17 23:19:22 -0500
committerChristian Cleberg <[email protected]>2026-03-17 23:19:22 -0500
commit8f2057c53e9009c2529c9c4849c914666c0e4b40 (patch)
tree77b5a93625fe9ea98baf4ab0d137055524705dad /ROADMAP.md
parentd27726d8755a5631fbd2105f735811a95379c4ab (diff)
downloadhutch-8f2057c53e9009c2529c9c4849c914666c0e4b40.tar.gz
hutch-8f2057c53e9009c2529c9c4849c914666c0e4b40.tar.bz2
hutch-8f2057c53e9009c2529c9c4849c914666c0e4b40.zip
create privacy policy
Diffstat (limited to 'ROADMAP.md')
-rw-r--r--ROADMAP.md155
1 files changed, 155 insertions, 0 deletions
diff --git a/ROADMAP.md b/ROADMAP.md
new file mode 100644
index 0000000..c63853a
--- /dev/null
+++ b/ROADMAP.md
@@ -0,0 +1,155 @@
+# Hutch Roadmap
+
+## Positioning
+
+Hutch is already beyond a minimal v1. The core SourceHut surfaces are present:
+
+- Authentication with PAT flow
+- Git repositories
+- Mercurial repositories
+- Trackers and tickets
+- Builds
+- Sharing
+- Core settings and app metadata
+
+The main risk now is not lack of scope. The main risk is shipping too late with
+an increasingly broad surface area and not enough polish.
+
+This roadmap treats the current app as a real 1.0 candidate and shifts the
+focus from feature expansion to launch readiness.
+
+## Version 1.0 Goal
+
+Ship a stable SourceHut mobile client with strong support for the most active
+day-to-day workflows:
+
+- Browse and manage repositories
+- Browse and manage tickets
+- Browse and manage builds
+- Support both git and hg repositories
+- Provide dependable sharing and navigation
+
+Version 1.0 does not need to cover every sr.ht service.
+
+## Release Strategy
+
+### Phase 1: Ship Readiness
+
+Focus on quality, not new surface area.
+
+#### Core release checklist
+
+- Verify authentication flow on simulator and physical device
+- Verify reset/sign-out/reset-app-data flow on simulator and physical device
+- Verify all destructive actions have confirmation and correct follow-up state
+- Verify all create flows succeed end-to-end:
+ - Git repository
+ - Mercurial repository
+ - Tracker
+ - Ticket
+ - Build submission
+- Verify build retry and edit/resubmit flows
+- Verify repository sharing links for:
+ - repository
+ - commit
+ - file
+- Verify sharing links for:
+ - build
+ - tracker
+ - ticket
+ - profile
+- Review empty/loading/error states across all main tabs
+- Remove any leftover temporary debug logging
+- Audit device-only issues:
+ - Xcode attach quirks
+ - on-device auth/cache behavior
+ - WebView rendering performance
+
+#### UI/UX polish checklist
+
+- Tighten wording and error messages across create/edit flows
+- Confirm summary tabs feel consistent across git and hg
+- Confirm toolbar actions are visible and non-duplicated
+- Confirm README rendering is smooth on large repositories
+- Confirm forms behave well on iPhone-sized screens
+- Confirm keyboard behavior and dismissal in all creation sheets
+
+#### App Store readiness
+
+- Finalize app icon and screenshots
+- Finalize App Store copy
+- Finalize privacy details
+- Finalize support URL / project URL
+- Decide whether TestFlight comes before public launch
+
+### Phase 2: Version 1.1
+
+Add one compact new service surface after launch.
+
+#### Recommended priority
+
+1. Exact repository lookup
+2. paste.sr.ht
+3. lists.sr.ht
+
+#### Why
+
+- Exact repository lookup solves a real gap created by the lack of public
+ discovery APIs
+- paste.sr.ht is relatively self-contained
+- lists.sr.ht is valuable, but broader in UI and data model scope
+
+### Phase 3: Version 1.2+
+
+Expand only after the v1 core is stable in the wild.
+
+- lists.sr.ht tab
+- paste.sr.ht creation/editing polish
+- pages.sr.ht management
+- broader deep-link/share coverage
+- workflow refinements for builds and tickets
+
+## What Counts As “Done Enough” For 1.0
+
+Hutch is ready for 1.0 when:
+
+- The main flows work reliably on real devices
+- Errors are understandable
+- The app does not feel inconsistent across git/hg/builds/tickets
+- The missing services feel like roadmap items, not broken gaps
+
+That means `lists.sr.ht`, `paste.sr.ht`, and `pages.sr.ht` are not blockers for
+the first release.
+
+## Non-Blockers For 1.0
+
+These should not delay launch:
+
+- Donation page / IAP
+- Broad service parity across all SourceHut products
+- Public repo discovery equivalent to `sr.ht/projects`
+- Advanced creation workflows beyond what the public APIs cleanly support
+
+## Open Product Questions
+
+These are worth deciding before or shortly after launch:
+
+- Should the app be positioned as “SourceHut client” or “SourceHut for git/hg,
+ tickets, and builds” in App Store messaging?
+- Should exact repository lookup live in Repositories search, a dedicated sheet,
+ or both?
+- Should `paste.sr.ht` or `lists.sr.ht` be the first new post-launch tab?
+- Is TestFlight feedback needed before calling the first public build 1.0?
+
+## Recommended Next Step
+
+Do not add another major service right away.
+
+Instead:
+
+1. Run a release-focused polish pass
+2. Build a strict 1.0 checklist from the current app
+3. Ship to TestFlight or release publicly
+4. Use `ROADMAP.md` and `TODO.md` separately:
+ - `ROADMAP.md` for release strategy
+ - `TODO.md` for concrete implementation backlog