local-first flow into quarto-hub.com
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 255
- Forks
- 17
- Avg merge
- 6h 20m
- Merged PRs (30d)
- 109
Description
@vezwork, you have the vision here, please write it out :)
When they visit quarto-hub.com for the first time (and subsequent times) people should be able to use quarto-hub.com as a static (offline) app without signing in. (indexxeddb only storage, no sync server connection)
People will be able to create projects, edit them, preview; generally take advantage of all the front end features of the app without logging in. Once they want to start syncing and sharing, they can choose to sign in. This is an onboarding ramp into signing up for the full syncing(+other server side stuff) features, still giving users good utility, and not costing us almost anything. This is a unique opportunity because we have a mostly local first architecture already, enterprise SaaS apps cannot do this.
Requires two changes:
- Remove auth gating, moving auth gating to behind a "I want to start syncing / start sharing" button or something
- Local project set v.s. central project set. Carlos wants the sync server to store a centralized
user id -> project setmap, for convenience of having the same projects across browsers
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by tracing the current auth gate and the IndexedDB/local project flow, then map how the sync server's user-to-project-set mapping should interact with local projects. Done means users can create, edit, and preview offline without signing in, with authentication deferred until syncing or sharing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- authentication, distributed-systems, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100