integrate database
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 0
- Avg merge
- 15h 54m
- Merged PRs (30d)
- 3
Description
#6 adds the proof of concept but until there's a database backing it, realworld utility will be very limited.
Postgres has been my preferred db for a long time, and pglite seems like it could give us the best of both worlds - an embeddable db for browser usage and easy deployment, and the same API if you want to connect a full Postgres server, or one of its many cloud formations. For now browser usage is not a priority for me, and it won't be in the initial implementation, but it will be very useful in the future.
I haven't used Drizzle but it's what I see recommended the most among Svelte users. Previously I've just used postgres and a small migration lib, and Drizzle looks like it strikes a balance I like with SQL and it can be used with postgres. See also drizzle-zod. I did some benchmarks -- https://github.com/ryanatkn/sql-js-benchmarks/blob/main/results/output.md -- my current takeaway is that I'll make a thin wrapper around @electric-sql/pglite and pg's drivers due to the apparent costs.
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
Start by reviewing issue #6 and the linked SQL benchmark results to understand the proof of concept and database trade-offs. Define the initial integration around a thin wrapper for the @electric-sql/pglite and pg drivers, with a clear scope for connecting PostgreSQL; the issue does not name implementation files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- postgres, postgresql, typescript
- Domain
- backend, database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100