pnpm based workflow (#14350)
* Use pnpm instead of npm * Setup workspace * Replace scripts / lerna root stuff * Add todo file * Update lock, start updating packages * Update todo * [WIP] Keep going on module resolution in pnpm * Fix final missing deps/types for complete build * [WIP] Replace npm commands with pnpm alternatives * Update jest config for v28 * Fix missing package under schema * Update workflow * Run CI on fork * Use local reference * Remove version from local workflow * Add build to prepare * Add Node's max old space size flag to linter * Idemdito for codeql * Hyphens? Underscores? * Bang * Only build one thing at a time * Underscores after all? * Match 7gb of GH * Set env on prepare * Jest is driving me nuts * Downgrade jest * Add root jest * We'll get there, eventually. * 🥳 * Het houdt niet op, niet vanzelf * attempt to fix e2e * fix unit test & shared import * add `debug: true` to CodeQL action * Fix dev call in shared * Add missing cross-env * Add missing geo-json dependency for app * add flag to prepare action to skip build * remove debug flag from codeql action * fix invalid env syntax * add tslib to app dependencies for tests * another attempt * Added missing rimraf dependency for the api prebuild/cleanup scripts * Added missing ts-node dependency for the api cli script * update E2E tests readme to use pnpm * Undo move of extensions sdk * Fixes nested groups in accordions not rendering fields (#14369) * initial fix for nested groups in accordions * removed debug code * Fix strict relative dates showing "incorrect" (#14390) * Set rounding method of relative formatted date to floor when strict option is selected * Add round fn as an option Co-authored-by: rijkvanzanten <rijkvanzanten@me.com> * Don't use locales in generated camelCased values from env (#14401) Ref https://github.com/directus/directus/discussions/14122 * Fix list panel descending sort (#14396) * fix list panel descending sort * Handle missing or explicit desc value Co-authored-by: rijkvanzanten <rijkvanzanten@me.com> * Fix query primary field for system tables (#14402) * New Crowdin updates (#14403) * Update source file en-US.yaml * New translations en-US.yaml (Spanish, Chile) * New translations en-US.yaml (Spanish, Latin America) * New translations en-US.yaml (Greek) * New translations en-US.yaml (Italian) * New translations en-US.yaml (French, Canada) * Fix/wysiwyg context menu (#14404) * New translations en-US.yaml (Polish) (#14407) * Encoded the url using encodeURIComponent, so that the url gets sanitzed and so, we did not get 404 error. (#14418) * Encoded the url using encodeURIComponent, so that the url gets sanitized and we did not get 404 error. * Added required changes as stated by the reviewer * Used encodeURI instead of encodeURIComponent to encode the params only * Solved linting error * Solved linting errors * checked with npm run lint, no linting errors found * fix generateJoi error due to empty permissions when creating new role (#14416) * fix empty permissions when creating new role * basic test * move logic up * additional test * Update api/tests/utils/filter-items.test.ts Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: ian <licitdev@gmail.com> * Recreate lockfile * Fix build of extensions-sdk * Add missing dependency * Add some more missing deps * Update blackbox to use pnpm * Update workflow to use main * Update pack to work with pnpm * Simplify commands * Remove todo file (completed) * ADd missing types dep * Use local test version * Remove version from local reference * Call super with context * Add missing dep * Simplify workflows Ref https://github.com/directus/organization/issues/135 * Simplify some more * Linter is on root Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com> Co-authored-by: brainslug <tim@brainslug.nl> Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> Co-authored-by: Gerard Lamusse <gerardlamo@gmail.com> Co-authored-by: José Varela <joselcvarela@gmail.com> Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: Zeel Pathak <60271095+zeel-pathak@users.noreply.github.com>
🐰 Introduction
Directus is a real-time API and App dashboard for managing SQL database content.
- Free & open-source. No artificial limitations, vendor lock-in, or hidden paywalls.
- REST & GraphQL API. Instantly layers a blazingly fast Node.js API on top of any SQL database.
- Manage pure SQL. Works with new or existing SQL databases, no migration required.
- Choose your database. Supports PostgreSQL, MySQL, SQLite, OracleDB, CockroachDB, MariaDB, and MS-SQL.
- On-Prem or Cloud. Run locally, install on-premises, or use our self-service Cloud service (free tier available).
- Completely extensible. Built to white-label, it is easy to customize our modular platform.
- A modern dashboard. Our no-code Vue.js app is safe and intuitive for non-technical users, no training required.
🚀 Directus Cloud
Directus Cloud allows you to create free Community Cloud projects in 90 seconds.
- Free Community Cloud tier available (no credit card required)
- No product limitations or service usage quotas (unlimited users, API requests, etc)
- A modern self-service dashboard to create and monitor all your projects in one place
- End-to-end solution: Directus, database, serverless auto-scaling, storage, and a global CDN
- Hourly usage-based pricing for our Standard Cloud allows you to pay-as-you-go
- Select your desired region and provision a new project in ~90 seconds
⚙️ Installation
Create a new Directus project by running the following npm command:
npm init directus-project my-project
Or, using yarn:
yarn create directus-project my-project
Simply follow the setup prompts and the CLI will create your new project directory (eg: my-project), configuration
file, and initial database. To get the most out of Directus, and to ensure you have the latest security patches, it is
important to keep your projects up-to-date.
📌 Requirements
Directus only requires Node.js and supports most operating systems and SQL database vendors.
- Node.js 12.20+
- npm 6.x+
Supported Databases
- PostgreSQL 10+
- MySQL 5.7.8+ / 8+ (with mysql_native_password)
- MariaDB 10.2.7+
- SQLite 3+
- CockroachDB 21.1.13+[1]
- MS SQL 13+[1]
- OracleDB 19+[1]
[1] Older versions may work, but aren't officially tested/supported.
Supported OS
- Ubuntu 18.04
- CentOS / RHEL 8
- macOS Catalina or newer
- Windows 10/11
- Docker (DockerHub + Dockerfile)
Other operating systems may also work, but are not officially supported.
🤔 Community Help
The Directus Documentation is a great place to start, or explore these other channels:
- Discord (Live Discussions)
- GitHub Issues (Report Bugs)
- GitHub Discussions (Questions, Feature Requests)
- Twitter (Latest News)
- YouTube (Video Tutorials)
❤️ Contributing & Sponsoring
Please read our Contributing Guide before submitting Pull Requests.
All security vulnerabilities should be reported in accordance with our Security Policy.
Directus is a premium open-source (GPLv3) project, made possible with support from our passionate core team, talented contributors, and amazing GitHub Sponsors. Thank you all!
© 2004-2022, Monospace Inc
