Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 ORM Open-Source Projects
-
Prisma
Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
TypeORM
ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
-
Sequelize
Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
drizzle-orm
Headless TypeScript ORM with a head. Runs on Node, Bun and Deno. Lives on the Edge and yes, it's a JavaScript ORM too 😅
-
APIJSON
🏆 零代码、全功能、强安全 ORM 库 🚀 后端接口和文档零代码,前端(客户端) 定制返回 JSON 的数据和结构。 🏆 A JSON Transmission Protocol and an ORM Library 🚀 provides APIs and Docs without writing any code.
-
Entity Framework
EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations.
-
gf
GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang. (by gogf)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: AutoCodeRover resolves 22% of real-world GitHub in SWE-bench lite | news.ycombinator.com | 2024-04-09>As an example, AutoCodeRover successfully fixed issue #32347 of Django.
This bug was fixed three years ago in a one-line change.[0] Presumably the fix was already in the training data.
[0] https://github.com/django/django/pull/13933
In the world of software development, there are two kinds of developers: those who have never had to complain about ORMs and those who have actually used them. Whether it’s Django ORM for Python, Active Record for Ruby, GORM for Golang, Doctrine for PHP, or Prisma for TypeScript, a common issue persists: writing simple queries is straightforward, but constructing complex or optimized queries can take hours, if not days.
GORM is a comprehensive ORM tool in Go, offering a code-first approach which allows defining database schemas using struct tags in Go. It's known for its developer-friendly nature, making it suitable for both beginners and experienced users. GORM supports a variety of SQL databases like MySQL, PostgreSQL, and SQLite. It's designed to be flexible, allowing developers to drop down to raw SQL when necessary. However, it's important to be cautious about its performance implications in large-scale applications.
If you use Sequalize, TypeORM or for MongoDB, we have Mongoose these types of ORM tools, then you are safe by default because these help us against the SQL query injection attacks by default.
Sequelize - modern Typescript and NodeJS ORM for Oracle, Postgres, MySQL, MariaDB, SQLite, SQL Server+docs
To manage user auth we need to create a user account - identification. So, let's install mongoose and jsonwebtoken to handle JWT authentication - an alternative to creating a user session when a user logs in
Enter Drizzle, a lightweight typesafe ORM for TypeScript that comes with one promise: If you know SQL — you know Drizzle.
Project mention: MyBatis makes it easier to use a relational database with OO applications | news.ycombinator.com | 2023-10-05
In this article, we'll delve into the world of concurrency control in Go, specifically focusing on the optimistic locking approach. We'll explore its implementation using Ent ORM to illustrate how to manage data consistency when multiple users interact with the same resource. Keep in mind that this example serves as a simplified illustration, and real-world booking systems involve a many of additional complexities. However, the core concepts presented here provide a solid foundation for understanding optimistic locking in Go applications. Feel free to explore the complete source code in my GitHub repository for a more in-depth look at the implementation.
Project mention: Multi-tenancy using schemas with Entity Framework and PostgreSQL | dev.to | 2023-10-16* You can check the original CreateMigration implementation at: https://github.com/dotnet/efcore/blob/release/7.0/src/EFCore.Relational/Migrations/Internal/MigrationsAssembly.cs
Project mention: Top 10 Rusty Repositories for you to start your Open Source Journey | dev.to | 2023-12-197. Diesel
Project mention: Show HN: Riza – Safely run untrusted code from your app | news.ycombinator.com | 2024-04-30Hi HN, I’m Kyle and together with Andrew (https://news.ycombinator.com/user?id=stanleydrew) we’ve been working on Riza (https://riza.io), a project to make WASM sandboxing more approachable. We’re excited to share a developer preview of our code interpreter API with HN.
There’s a bit of a backstory here. A few months ago, an old coworker reached out asking how to execute untrusted code generated by an LLM. Based on our experience building a plugin system for sqlc (https://sqlc.dev), we thought a sandboxed WASM runtime would be a good fit. A bit of hacking later, we got everything wired up to solve his issue. Now the API is ready for other developers to try out.
The Riza Code Interpreter API is an HTTP interface to various dynamic language interpreters, each running inside a WASM sandbox without access to the outside world (for now). We modeled the API to align with a POSIX shell-style interface.
We made a playground so you can try it out without signing up: https://riza.io
The API documentation lives here: https://docs.riza.io
There are many limitations at the moment, but we expect to rapidly expand capabilities so that programs can e.g. access the network and filesystem. Our roadmap has more details: https://docs.riza.io/reference/roadmap
If you need to execute LLM-generated code we’d love to have you try the API and let us know if you run into any issues. You can email us directly at [email protected].
OK -
can we start considering binary files committed to a repo, even as data for tests, to be a huge red flag, and that the binary files themselves should instead be generated at testing time by source code that's stated as reviewable cleartext. This would make it much harder (though of course we can never really say "impossible") to embed a substantial payload in this way.
when binary files are part of a test suite, they are typically trying to illustrate some element of the program being tested, in this case a file that was incorrectly xz-encoded. Binary files like these weren't typed by hand, they will always ultimately come from something plaintext source.
Here's an example! My own SQLAlchemy repository has a few binary files in it! https://github.com/sqlalchemy/sqlalchemy/blob/main/test/bina... oh noes. Why are those files there? well in this case I just wanted to test that I can send large binary BLOBs into the database driver and I was lazy. This is actually pretty dumb, the two binary files here add 35K of useless crap to the source, and I could just as easily generate this binary data on the fly using a two liner that spits out random bytes. Anyone could see that two liner and know that it isn't embedding a malicious payload.
If I wanted to generate a poorly formed .xz file, I'd illustrate source code that generates random data, runs it through .xz, then applies "corruption" to it, like zeroing out the high bit of every byte. The process by which this occurs would be all reviewable in source code.
CakePHP is an open-source PHP framework for web development with 8.7k stars and 3.5k forks on GitHub. It offers APIs that enable developers to develop applications quickly. It allows you to create highly secure and scalable web applications, including social networks, eCommerce, and online collaboration platforms.
Project mention: Drizzle is just as unready for prime-time as Prisma, what else is there? | /r/reactjs | 2023-12-06So is it like Exposed for Kotlin which is a typesafe Kotlin DSL for building sql queries? I’ve been looking for something like this in typescript! https://github.com/JetBrains/Exposed
Project mention: SableDb – a key/value store that uses RocksDB and Redis API (written in Rust) | news.ycombinator.com | 2024-04-04a few times, seems interesting. The author's also built a lot of other cool concurrency primitives for Rust as well.
[0] https://github.com/spacejam/sled
ORM related posts
-
Mongoid 9.0 Released
-
Show HN: Riza – Safely run untrusted code from your app
-
Show HN: ZenStack V2 – RLS alternative with declarative Auth rules in Prisma
-
A Software Engineer's Tips and Tricks #1: Drizzle
-
Stories Behind ZenStack V2!
-
Building a full Django project, starting with a single file
-
Get started with Drizzle ORM and Xata's Postgres service
-
A note from our sponsor - InfluxDB
www.influxdata.com | 1 May 2024
Index
What are some of the best open-source ORM projects? This list will help you:
Project | Stars | |
---|---|---|
1 | Django | 76,778 |
2 | Prisma | 37,241 |
3 | GORM | 35,481 |
4 | TypeORM | 33,287 |
5 | Sequelize | 29,045 |
6 | Mongoose | 26,621 |
7 | beego orm | 25,503 |
8 | drizzle-orm | 19,712 |
9 | MyBatis | 19,420 |
10 | APIJSON | 16,659 |
11 | mybatis-plus | 15,790 |
12 | ent | 14,930 |
13 | Entity Framework | 13,342 |
14 | greenDAO | 12,614 |
15 | diesel | 11,930 |
16 | sqlc | 10,950 |
17 | gf | 10,871 |
18 | Peewee | 10,795 |
19 | SQLAlchemy | 8,807 |
20 | CakePHP | 8,673 |
21 | LitePal | 8,050 |
22 | Exposed | 7,901 |
23 | sled | 7,758 |
Sponsored