-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Ecosystem
A non-exhaustive list of open-source projects that either use SQLx or integrate with it.
This page is publicly editable and is for informational purposes only.
A project being listed here does not constitute an endorsement by the SQLx developers.
We kindly request your help in keeping this page as up-to-date as possible.
To avoid ambiguities or conflicts, please adhere to the following rules when updating this page:
(Click to Expand)
- You MUST include an edit message, with the reason for the edit, when changing this page.
- All edits to this page MUST be made in good faith.
- Any edits in violation of these rules MAY result in being banned from further participation on this repository.
-
Unless otherwise stated, changes to this page DO NOT require maintainer approval.
-
A "maintainer" is any user who has write access to this repository.
-
You SHOULD seek maintainer approval for changes via one of the following means:
- Discord message (
#internal
channel, NOT direct message) - Github discussion
- Github issue
- Discord message (
-
You MAY NOT add, change, merge or remove categories without approval from a maintainer.
-
You MAY NOT modify this Rules section without approval from a maintainer.
- You MUST add the date of a rule change to the
<summary>
element above (see source).
- You MAY add or update a listing for any project, regardless of whether or not you are an owner.
- You MAY use a stylized name (e.g. SQLx instead of
sqlx
). - You MAY include a brief description, no more than 20 words.
- Put the description in quotation marks (
" "
) if it originates from the project itself.
- Put the description in quotation marks (
- You MUST use an appropriate category.
- If an appropriate category does not exist, please discuss adding one with the maintainers as explained above in "Changes Requiring Approval".
- Ordering within a category is lexicographical, ignoring case.
- You MUST include a relevant link:
- For Rust crates, include the crates.io link.
- For all projects, link to the public repository (on Github or otherwise).
- The project MUST be AT LEAST six months old.
- For Rust crates, at least six months from the first public release on crates.io.
- For other projects, at least six months from the first public commit to the primary branch on a public repository.
- The project MUST be actively maintained to be added.
- At least one crates.io release or commit to the primary branch within the last two weeks, at the time the listing is added.
- The project MUST use SQLx.
- The definition of "use" is deliberately left up to interpretation, but please be honest.
- You MAY remove any listing IF AND ONLY IF at least one of the following criteria are met.
- You MAY remove a listing for any reason not listed here, IF AND ONLY IF you own the project.
- A project that is explicitly discontinued SHOULD be removed. At least one of the following criteria should be met:
- The public repository is archived.
- The user account that owns the public repository is deleted.
- The owner has made a posting on a public page (README, blog post, Github issue, etc.) stating that they will not continue development.
- A listing SHOULD be removed if the project is too out of date or no longer actively maintained.
- The project or crate is not compatible with a version of SQLx released in the last twelve months.
- A crates.io release or commit to any branch on a public repository has not been made in the past twelve months.
- A listing MAY be removed if a reasonable person can conclude from publicly available information that there will be no further development. Examples include, but are not limited to:
- The last public posting by the project owner was a "call for maintainers" and no new project owners have been added.
- The project owner has announced they are retiring from software development and there are no other maintainers.
- It becomes known that the project owner has unfortunately passed away and there are no other maintainers.
- If removing a listing leaves an empty category, replace the category's contents with
(Empty as of <current date>)
.
Object-Relational Mappers built on SQLx.
SQLx itself is not an ORM and does not intend to be. If you prefer a more object-oriented style of database access, you might be interested in one of these crates:
- SeaORM (Crates.io, Github): "[...] a relational ORM to help you build web services in Rust with the familiarity of dynamic languages."
- Welds (Crates.io, Github): "An async ORM written in rust using sqlx and/or Tiberius."
Crates to assist with building dynamic queries for SQLx.
Crates providing additional type integrations for SQLx.
Alternative connection pooler implementations (vs sqlx::Pool
) that integrate with SQLx.
(Empty as of 2024/08/13)
Alternative support for migrations (vs sqlx::migrate!()
) that integrate with SQLx.
(Empty as of 2024/08/13)
Crates that integrate with SQLx to aid development of web backends or frontends.
- SQLpage (Crates.io, Github):
"A SQL-only web application framework." Built on
sqlx-oldapi
. -
tower-sessions-sqlx-store
(Crates.io, Github): "SQLx session stores fortower-sessions
."- SQLx maintainer note (2024/08/13): hardcodes the
time
feature of SQLx. May cause issues when using the query macros withchrono
:
https://github.com/launchbadge/sqlx/issues/3412#issuecomment-2277377597
- SQLx maintainer note (2024/08/13): hardcodes the
Known forks of SQLx. These may not have compatible APIs and are not associated with the SQLx developers.