
Security News
Deno 2.6 + Socket: Supply Chain Defense In Your CLI
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.
oxyde
Advanced tools
High-performance async Python ORM with Rust core.
Oxyde combines Python's expressiveness with Rust's performance. Models defined with Pydantic v2, queries executed in native Rust.
from oxyde import OxydeModel, Field, db
class User(OxydeModel):
class Meta:
is_table = True
id: int | None = Field(default=None, db_pk=True)
email: str = Field(db_unique=True)
age: int = Field(ge=0, le=150)
async def main():
async with db.connect("postgresql://localhost/mydb"):
# Create
user = await User.objects.create(email="alice@example.com", age=30)
# Read
users = await User.objects.filter(age__gte=18).limit(10).all()
# Update
await User.objects.filter(id=user.id).update(age=31)
# Delete
await User.objects.filter(id=user.id).delete()
Model.objects.filter() syntaxasyncioatomic() context manager with savepointsmakemigrations and migrate CLIpip install oxyde
from oxyde import OxydeModel, Field
class User(OxydeModel):
class Meta:
is_table = True
id: int | None = Field(default=None, db_pk=True)
name: str
email: str = Field(db_unique=True)
age: int | None = Field(default=None)
from oxyde import db
async with db.connect("sqlite:///app.db"):
# Create
user = await User.objects.create(name="Alice", email="alice@example.com", age=30)
# Query
adults = await User.objects.filter(age__gte=18).all()
# Get single object
user = await User.objects.get(id=1)
# Update
user.age = 31
await user.save()
# Delete
await user.delete()
from oxyde.db import transaction
async with transaction.atomic():
user = await User.objects.create(name="Alice", email="alice@example.com")
await Profile.objects.create(user_id=user.id)
# Auto-commits on success, rolls back on exception
from fastapi import FastAPI
from oxyde import db
app = FastAPI(
lifespan=db.lifespan(
default="postgresql://localhost/mydb",
)
)
@app.get("/users")
async def get_users():
return await User.objects.filter(is_active=True).all()
| Database | Min Version | Status | Notes |
|---|---|---|---|
| PostgreSQL | 12+ | Full | RETURNING, UPSERT, FOR UPDATE/SHARE, JSON, Arrays |
| SQLite | 3.35+ | Full | RETURNING, UPSERT, WAL mode by default |
| MySQL | 8.0+ | Full | UPSERT via ON DUPLICATE KEY, FOR UPDATE/SHARE |
Recommendation: PostgreSQL for production, SQLite for development/testing.
SQLite < 3.35: Falls back to
last_insert_rowid()which may return incorrect IDs with concurrent inserts.MySQL: No RETURNING clause — uses
last_insert_id(). Bulk INSERT returns calculated ID range which may be incorrect with concurrent inserts.
Connection URLs:
"postgresql://user:password@localhost:5432/database"
"sqlite:///path/to/database.db"
"sqlite:///:memory:"
"mysql://user:password@localhost:3306/database"
Full documentation: https://oxyde.fatalyst.dev/
If you have suggestions or find a bug, please open an issue or create a pull request on GitHub.
This project is licensed under the terms of the MIT license.
FAQs
High-performance async Python ORM with Rust core
We found that oxyde demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.

Security News
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.