denodrivers / denodrivers/mysql
Standardize SQL database interface for TS/JS
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 264
- Forks
- 64
- PR merge metrics
- No merged PRs in 30d
Description
It's a topic that has been brought up every now and then in the Deno DB community, but as Deno is becoming more stable, supports NPM and Node, and we got JSR, I believe it's time to consolidate and create a db standard SQL interface for TS and JS.
I have created a POC in my repo PR.
Any input and contribution is greatly appreciated and encouraged as it would be best to make this a collaborative effort amongst the database maintainers since they know the pitfalls for the different engines.
The milestones are as follows:
- Decide on an interface for DB clients that can be implemented by any SQL based db. Wrappers can be created for existing database clients to locate potential issues with the interface and current implementations.
- Refactor existing databases to implement these interfaces.
The goal for this is to be able to easily transition between databases and have a familiar interface and usage between them.
Consider the PR as a parent issue to have discussions, and where we can finalize the implementation.
Contributor guide
No contributing guide indexed for this repository
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 with the proposed interface and usage in the linked deno-sqlx POC (PR #1), then compare it with this MySQL driver and other database implementations. The issue is done when the community agrees on a shared SQL client interface and the existing databases are refactored to implement it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, mysql, sql, typescript
- Domain
- backend-api-design, databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100