{"id":13395388,"url":"https://github.com/edgedb/edgedb","last_synced_at":"2025-11-02T07:30:34.361Z","repository":{"id":37246149,"uuid":"95817032","full_name":"edgedb/edgedb","owner":"edgedb","description":"A graph-relational database with declarative schema, built-in migration system, and a next-generation query language","archived":false,"fork":false,"pushed_at":"2025-02-08T22:36:17.000Z","size":66580,"stargazers_count":13372,"open_issues_count":843,"forks_count":408,"subscribers_count":100,"default_branch":"master","last_synced_at":"2025-02-10T07:02:03.727Z","etag":null,"topics":["database","edgedb","edgeql","graph-relational","high-performance","relational-database"],"latest_commit_sha":null,"homepage":"https://edgedb.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edgedb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-06-29T20:30:48.000Z","updated_at":"2025-02-10T04:14:17.000Z","dependencies_parsed_at":"2023-10-12T01:12:51.061Z","dependency_job_id":"f7f3c738-2ce9-4b7a-88f0-64036ba4f289","html_url":"https://github.com/edgedb/edgedb","commit_stats":{"total_commits":7951,"total_committers":121,"mean_commits":65.7107438016529,"dds":0.8009055464721418,"last_synced_commit":"032b8d80ebac1ab03aae7cb3abaa3f7961f1900a"},"previous_names":[],"tags_count":92,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edgedb%2Fedgedb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edgedb%2Fedgedb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edgedb%2Fedgedb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edgedb%2Fedgedb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edgedb","download_url":"https://codeload.github.com/edgedb/edgedb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239388930,"owners_count":19630303,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","edgedb","edgeql","graph-relational","high-performance","relational-database"],"created_at":"2024-07-30T17:01:55.883Z","updated_at":"2025-02-18T00:29:16.104Z","avatar_url":"https://github.com/edgedb.png","language":"Python","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.edgedb.com\"\u003e\n    \u003cimg src=\"https://www.edgedb.com/github_banner.png\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003eEdgeDB\u003c/h1\u003e\n  \u003ca href=\"https://github.com/edgedb/edgedb\" rel=\"nofollow\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/stars/edgedb/edgedb\" alt=\"Stars\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/edgedb/edgedb/actions\"\u003e\n    \u003cimg src=\"https://github.com/edgedb/edgedb/workflows/Tests/badge.svg?event=push\u0026branch=master\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/edgedb/edgedb/blob/master/LICENSE\"\u003e\n    \u003cimg alt=\"license\" src=\"https://img.shields.io/badge/license-Apache%202.0-blue\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://discord.gg/umUueND6ag\"\u003e\n    \u003cimg alt=\"discord\" src=\"https://img.shields.io/discord/841451783728529451?color=5865F2\u0026label=discord\u0026logo=discord\u0026logoColor=8a9095\"\u003e\n  \u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://www.edgedb.com/docs/guides/quickstart\"\u003eQuickstart\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://www.edgedb.com\"\u003eWebsite\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://www.edgedb.com/docs\"\u003eDocs\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://www.edgedb.com/tutorial\"\u003ePlayground\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://www.edgedb.com/blog\"\u003eBlog\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://discord.gg/umUueND6ag\"\u003eDiscord\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://twitter.com/edgedatabase\"\u003eTwitter\u003c/a\u003e\n  \u003cbr /\u003e\n\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\u003cbr /\u003e\n\n\u003cbr/\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch2\u003eWhat is EdgeDB?\u003c/h2\u003e\n  \u003cp style=\"max-width: 450px;\"\u003e\n    EdgeDB is a new kind of database\n    \u003cbr/\u003e\n    that takes the best parts of\n    \u003cbr/\u003e\n    relational databases, graph\n    \u003cbr/\u003e\n    databases, and ORMs. We call it\n    \u003cbr/\u003ea \u003cb\u003egraph-relational database\u003c/b\u003e.\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cbr/\u003e\n\n\u003cbr/\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e🧩 Types, not tables 🧩\u003c/h3\u003e\n\u003c/div\u003e\n\u003cbr/\u003e\n\nSchema is the foundation of your application. It should be something you can\nread, write, and understand.\n\nForget foreign keys; tabular data modeling is a relic of an older age, and it\n[isn't compatible](https://en.wikipedia.org/wiki/Object%E2%80%93relational_impedance_mismatch)\nwith modern languages. Instead, EdgeDB thinks about schema the same way you do:\nas **object types** containing **properties** connected by **links**.\n\n```esdl\ntype Person {\n  required name: str;\n}\n\ntype Movie {\n  required title: str;\n  multi actors: Person;\n}\n```\n\nThis example is intentionally simple, but EdgeDB supports everything you'd\nexpect from your database: a strict type system, indexes, constraints, computed\nproperties, stored procedures...the list goes on. Plus it gives you some shiny\nnew features too: link properties, schema mixins, and best-in-class JSON\nsupport. Read the [schema docs](https://www.edgedb.com/docs/datamodel/index)\nfor details.\n\n\u003c!-- ### Objects, not rows. ❄️ --\u003e\n\n\u003cbr/\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e🌳 Objects, not rows 🌳\u003c/h3\u003e\n\u003c/div\u003e\n\u003cbr/\u003e\n\nEdgeDB's super-powered query language EdgeQL is designed as a ground-up\nredesign of SQL. EdgeQL queries produce rich, structured objects, not flat\nlists of rows. Deeply fetching related objects is painless...bye, bye, JOINs.\n\n```esdl\nselect Movie {\n  title,\n  actors: {\n    name\n  }\n}\nfilter .title = \"The Matrix\"\n```\n\nEdgeQL queries are also _composable_; you can use one EdgeQL query as an\nexpression inside another. This property makes things like _subqueries_ and\n_nested mutations_ a breeze.\n\n```esdl\ninsert Movie {\n  title := \"The Matrix Resurrections\",\n  actors := (\n    select Person\n    filter .name in {\n      'Keanu Reeves',\n      'Carrie-Anne Moss',\n      'Laurence Fishburne'\n    }\n  )\n}\n```\n\nThere's a lot more to EdgeQL: a comprehensive standard library, computed\nproperties, polymorphic queries, `with` blocks, transactions, and much more.\nRead the [EdgeQL docs](https://www.edgedb.com/docs/edgeql/index) for the full\npicture.\n\n\u003cbr/\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e🦋 More than a mapper 🦋\u003c/h3\u003e\n\u003c/div\u003e\n\u003cbr/\u003e\n\nWhile EdgeDB solves the same problems as ORM libraries, it's so much more. It's\na full-fledged database with a\n[powerful and elegant query language](https://www.edgedb.com/docs/edgeql/index), a\n[migrations system](https://www.edgedb.com/docs/guides/migrations/index), a\n[suite of client libraries](https://www.edgedb.com/docs/clients/index) in\ndifferent languages, a\n[command line tool](https://www.edgedb.com/docs/cli/index), and—coming soon—a\ncloud hosting platform. The goal is to rethink every aspect of how developers\nmodel, migrate, manage, and query their database.\n\nHere's a taste-test of EdgeDB's next-level developer experience: you can\ninstall our CLI, spin up an instance, and open an interactive EdgeQL shell with\njust three commands.\n\n```\n$ curl --proto '=https' --tlsv1.2 -sSf https://sh.edgedb.com | sh\n$ edgedb project init\n$ edgedb\nedgedb\u003e select \"Hello world!\"\n```\n\nWindows users: use this Powershell command to install the CLI.\n\n```\nPS\u003e iwr https://ps1.edgedb.com -useb | iex\n```\n\n\u003cbr /\u003e\n\n## Get started\n\nTo start learning about EdgeDB, check out the following resources:\n\n- **[The quickstart](https://www.edgedb.com/docs/guides/quickstart)**. If\n  you're just starting out, the 10-minute quickstart guide is the fastest way\n  to get up and running.\n- **[EdgeDB Cloud 🌤️](https://www.edgedb.com/cloud)**. The best\n  most effortless way to host your EdgeDB database in the cloud.\n- **[The interactive tutorial](https://www.edgedb.com/tutorial)**. For a\n  structured deep-dive into the EdgeQL query language, try the web-based\n  tutorial— no need to install anything.\n- **[The e-book](https://www.edgedb.com/easy-edgedb)**. For the most\n  comprehensive walkthrough of EdgeDB concepts, check out our illustrated\n  e-book [Easy EdgeDB](https://www.edgedb.com/easy-edgedb). It's designed to\n  walk a total beginner through EdgeDB in its entirety, from the basics through\n  advanced concepts.\n- **The docs.** Jump straight into the docs for\n  [schema modeling](https://www.edgedb.com/docs/datamodel/index) or\n  [EdgeQL](https://www.edgedb.com/docs/edgeql/index)!\n\n\u003cbr /\u003e\n\n## Contributing\n\nPRs are always welcome! To get started, follow\n[this guide](https://www.edgedb.com/docs/internals/dev) to build EdgeDB from\nsource on your local machine.\n\n[File an issue 👉](https://github.com/edgedb/edgedb/issues/new/choose)\n\u003cbr /\u003e\n[Start a Discussion 👉](https://github.com/edgedb/edgedb/discussions/new)\n\u003cbr /\u003e\n[Join the discord 👉](https://discord.gg/umUueND6ag)\n\n\u003cbr /\u003e\n\n## License\n\nThe code in this repository is developed and distributed under the\nApache 2.0 license. See [LICENSE](LICENSE) for details.\n","funding_links":[],"categories":["Python","HarmonyOS","\u003ca id=\"tag-dev\" href=\"#tag-dev\"\u003eDev\u003c/a\u003e","Databases","MMDBS","Open Source","数据库管理系统","Data Storage Optimisation","database"],"sub_categories":["Windows Manager","\u003ca id=\"tag-dev.storage\" href=\"#tag-dev.storage\"\u003eStorage\u003c/a\u003e","Graph Databases","Open-Source","Databases","网络服务_其他"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedgedb%2Fedgedb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedgedb%2Fedgedb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedgedb%2Fedgedb/lists"}