{"full_name":"directus/directus","owner":"directus","name":"directus","url":"https://github.com/directus/directus","description":"The flexible backend for all your projects 🐰 Turn your DB into a headless CMS, admin panels, or apps with a custom UI, instant APIs, auth & more.","homepage":"https://directus.com","topics":[],"language":"TypeScript","license":"NOASSERTION","avatar":"https://avatars.githubusercontent.com/u/15967950?v=4","created_at":"2012-12-12T01:35:36Z","pushed_at":"2026-11-10T08:40:17Z","metrics":{"stars":38676,"forks":4998,"watchers":339,"issues":10076,"prs":11160,"releases":379,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":5511},"growth":{"day":{"stars":8,"forks":1,"base_day":"2026-11-09"},"week":{"stars":-122,"forks":7,"base_day":"2026-11-03"},"month":{"stars":651,"forks":38,"base_day":"2026-10-11"}},"history":{"dates":["2026-09-09","2026-09-10","2026-09-11","2026-09-12","2026-09-13","2026-09-14","2026-09-15","2026-09-16","2026-09-17","2026-09-18","2026-09-19","2026-09-20","2026-09-21","2026-09-22","2026-09-23","2026-09-24","2026-09-25","2026-09-26","2026-09-27","2026-09-28","2026-09-29","2026-09-30","2026-10-01","2026-10-02","2026-10-03","2026-10-04","2026-10-05","2026-10-06","2026-10-07","2026-10-08","2026-10-09","2026-10-10","2026-10-11","2026-10-12","2026-10-13","2026-10-14","2026-10-15","2026-10-16","2026-10-17","2026-10-18","2026-10-19","2026-10-20","2026-10-21","2026-10-22","2026-10-23","2026-10-24","2026-10-25","2026-10-26","2026-10-27","2026-10-28","2026-10-29","2026-10-30","2026-10-31","2026-11-01","2026-11-02","2026-11-03","2026-11-04","2026-11-09","2026-11-10"],"stars":[37618,37642,37665,37697,37667,37682,37698,37741,37764,37802,37816,37832,37856,37868,37877,37905,37926,37935,37947,37898,37908,37934,37943,37954,37961,37968,37973,37989,37994,38004,38006,38012,38025,38091,38216,38303,38362,38384,38432,38465,38498,38523,38545,38561,38608,38634,38644,38619,38625,38629,38638,38647,38705,38735,38750,38798,38811,38668,38676],"forks":[4913,4913,4914,4915,4922,4923,4923,4924,4927,4933,4932,4928,4931,4930,4933,4935,4939,4941,4944,4947,4947,4955,4956,4957,4958,4957,4958,4959,4957,4959,4961,4960,4960,4961,4964,4964,4963,4965,4967,4970,4971,4974,4975,4977,4979,4981,4985,4981,4980,4982,4981,4986,4987,4989,4991,4991,4993,4997,4998],"watchers":[332,332,332,333,336,336,336,336,336,337,337,337,337,337,337,337,338,337,337,337,337,337,337,337,337,337,337,337,338,338,338,339,339,343,344,344,345,344,344,343,344,344,345,346,346,346,346,346,346,340,340,340,340,340,340,339,339,339,339],"issues_open":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"prs_open":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]},"boards":{},"same_owner":[],"issues":[{"number":7237,"title":"GraphQL create item with relation should be checked against the update permissions not create","comments":43,"created_at":"2021-08-06T06:39:25Z"},{"number":18110,"title":"Collection/field creation/changes saved to DB but not displayed in Directus in v9.23.2–v9.24.0 (self-hosted Docker)","comments":30,"created_at":"2023-04-08T08:34:14Z"},{"number":9507,"title":"Add foreign key constraint handler flow in app","comments":25,"created_at":"2021-11-05T08:06:36Z"},{"number":11775,"title":"Permissions creating items","comments":24,"created_at":"2022-02-21T17:14:19Z"},{"number":20614,"title":"Combining two filters on a M2M fields inside an _and close do not return expected results.","comments":21,"created_at":"2023-12-01T18:02:09Z"},{"number":26206,"title":"Issue with constant increasing memory usage","comments":20,"created_at":"2025-11-17T10:35:40Z"},{"number":28298,"title":"Redundant database indexes created","comments":17,"created_at":"2026-09-25T14:40:46Z"},{"number":23241,"title":"impossible to set knex connection options containing underscore for postgres","comments":16,"created_at":"2024-08-07T21:53:51Z"}],"discussions":[{"number":28205,"title":"Two string-utility edge-case fixes: normalizePath leading-backslash & formatTitle empty-segment spacing (PRs ready, pending Discussion)","comments":1,"category":"Feature Requests","created_at":"2026-09-08T14:47:19Z"},{"number":28086,"title":"Feature Request - Please use our Public Roadmap","comments":1,"category":"Feature Requests","created_at":"2026-08-12T10:08:48Z"},{"number":27836,"title":"Feature Request - Please use our Public Roadmap","comments":1,"category":"Feature Requests","created_at":"2026-07-03T14:44:24Z"},{"number":27778,"title":"Agent plugin packaging around Directus MCP workflows?","comments":1,"category":"Feature Requests","created_at":"2026-06-24T14:56:48Z"},{"number":27165,"title":"Feature Request - Please use our Public Roadmap","comments":1,"category":"Feature Requests","created_at":"2026-04-20T03:26:08Z"},{"number":27052,"title":"“Is the Directus Pizza demo codebase in (NextJs) available publicly? if yes can anyone share or give access for learning purpose”","comments":1,"category":"Feature Requests","created_at":"2026-04-06T13:01:58Z"},{"number":26926,"title":"Feature Request - Please use our Public Roadmap","comments":1,"category":"Feature Requests","created_at":"2026-03-20T04:32:54Z"},{"number":26503,"title":"Have Difficulty in setting Access Control for amny to many relationship","comments":3,"category":"Feature Requests","created_at":"2026-01-20T11:50:08Z"}],"latest_release":{"name":"v12.6.1","tag":"v12.6.1","published_at":"2026-11-04T20:19:38Z","body":"### ✨ New Features & Improvements\r\n\r\n- **@directus/app**\r\n  - Added an \"Allowed Link Protocols\" option to the WYSIWYG interface so text and image links with custom URL schemes (e.g. `myapp://`) are kept, and made the link drawer show an error for a scheme that is not allowed instead of saving an empty link ([#28447](https://github.com/directus/directus/pull/28447) by @alvarosabu)\r\n- **@directus/utils**\r\n  - Fixed searching a many-to-many list so it matches the related fields shown in the list, not only the junction's own fields. Searching a number no longer matches hidden ID fields, such as the junction row ID ([#28422](https://github.com/directus/directus/pull/28422) by @robluton)\r\n- **@directus/cli**\r\n  - Added presets to Environment Sync. Global and role-scoped bookmarks and default views are synced; personal presets stay on their instance, and role presets whose role is missing on the target are skipped with a warning and counted in the new `skipped` field of the `--json` data report. Fixed add-mode pushes silently skipping a new permission whose source ID matched an unrelated target record ([#28357](https://github.com/directus/directus/pull/28357) by @bryantgillespie)\r\n\r\n### 🐛 Bug Fixes & Optimizations\r\n\r\n- **@directus/app**\r\n  - Improved table, select, menu, and color display rendering performance by replacing per-instance CSS `v-bind()` with inline styles ([#28435](https://github.com/directus/directus/pull/28435) by @bryantgillespie)\r\n  - Fixed searching a many-to-many list so it matches the related fields shown in the list, not only the junction's own fields. Searching a number no longer matches hidden ID fields, such as the junction row ID ([#28422](https://github.com/directus/directus/pull/28422) by @robluton)\r\n  - Updated `vue-i18n`, `joi`, `follow-redirects`, `decode-uri-component`, `qs`, `glob`, and `@hono/node-server` to address CVEs ([#28451](https://github.com/directus/directus/pull/28451) by @br41nslug)\r\n  - Added a check to prevent the public page shader and video backgrounds from downloading and rendering on narrow screens when they are hidden. ([#28432](https://github.com/directus/directus/pull/28432) by @bryantgillespie)\r\n  - Sped up table row selection checks by looking up selected keys in a set instead of scanning the whole selection for every row ([#28438](https://github.com/directus/directus/pull/28438) by @bryantgillespie)\r\n  - Fixed login redirects normalizing into protocol-relative URLs ([#28456](https://github.com/directus/directus/pull/28456) by @br41nslug)\r\n- **@directus/api**\r\n  - Fixed searching a many-to-many list so it matches the related fields shown in the list, not only the junction's own fields. Searching a number no longer matches hidden ID fields, such as the junction row ID ([#28422](https://github.com/directus/directus/pull/28422) by @robluton)\r\n  - Updated `vue-i18n`, `joi`, `follow-redirects`, `decode-uri-component`, `qs`, `glob`, and `@hono/node-server` to address CVEs ([#28451](https://github.com/directus/directus/pull/28451) by @br41nslug)\r\n  - Fixed login redirects normalizing into protocol-relative URLs ([#28456](https://github.com/directus/directus/pull/28456) by @br41nslug)\r\n  - Fixed sandbox request URL scope validation not being applied to redirect destinations ([#28457](https://github.com/directus/directus/pull/28457) by @br41nslug)\r\n  - Fixed Run Script operations and sandboxed extensions failing with \"illegal access\" when their data contained errors, such as the validation errors from a failed Condition operation. Errors are now passed into the sandbox as plain objects (with `name`, `message`, `code`, `status` and `extensions`) instead of `Error` instances ([#28441](https://github.com/directus/directus/pull/28441) by @AlexGaillard)\r\n  - Bumped nodejs from 26.12.1 to 26.13.0 ([#28459](https://github.com/directus/directus/pull/28459) by @br41nslug)\r\n- **@directus/composables**\r\n  - Updated `vue-i18n`, `joi`, `follow-redirects`, `decode-uri-component`, `qs`, `glob`, and `@h"},"readme":true,"readme_zh":false,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}