mirror of
https://github.com/directus/directus.git
synced 2026-01-30 23:08:15 -05:00
* Add support for _FILE environment variables * Enhance processing of _FILE env vars * Same processing as with other env vars (do not simply treat as string) - tested successfully * Warn if both variables are set (EXAMPLE and EXAMPLE_FILE) * Add comments to make it easier to understand the code * Set newKey only after file read was successful * Don't convert value > MAX_SAFE_INTEGER to number Thanks to @skizer! As stated by @skizer (from #6119): Altho it seems that we do have a numerical value it can happen that its outside of Number.MAX_SAFE_INTEGER thus resulting in a change of the original intended value e.g oauth -> discord -> client_id * Fix recursive logger-env import Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
169 lines
8.7 KiB
Markdown
169 lines
8.7 KiB
Markdown
# Directus Docs
|
|
|
|
> These Docs will help you get up-and-running quickly, guide you through advanced features, and explain the core
|
|
> concepts that make Directus so unique.
|
|
|
|
::: tip Version 9
|
|
|
|
This is the documentation for the new **[Directus 9](https://github.com/directus/directus)** platform written in
|
|
Node.js. If you are looking for the previous **[Directus 8](https://github.com/directus/v8-archive/releases/latest)**
|
|
(PHP) docs, you can find them [here](https://v8.docs.directus.io).
|
|
|
|
:::
|
|
|
|
## What is Directus?
|
|
|
|
**Directus is an Open Data Platform for managing the content of any SQL database. It provides a powerful API layer for
|
|
developers and an intuitive App for non-technical users.** Written entirely in JavaScript (primarily
|
|
[Node.js](https://nodejs.dev) and [Vue.js](https://vuejs.org)), Directus is completely open-source, modular, and
|
|
extensible, allowing it to be fully tailored to the requirements of any project.
|
|
|
|
The platform can be used for an individual purpose, such as headless content management, or more broadly to democratize
|
|
an entire organization's data (customers, inventory, business intelligence, projects, etc).
|
|
|
|
::: tip What's in a name?
|
|
|
|
"Directus" ([duh REKT iss](http://audio.pronouncekiwi.com/Salli/Directus)) is Latin for: _laid straight, arranged in
|
|
lines_. The broadest goal of our platform is to present data in a simple, orderly, and intuitive way.
|
|
|
|
:::
|
|
|
|
## Database Mirroring
|
|
|
|
**What makes Directus so unique is that it dynamically generates custom API endpoints based on your SQL database's
|
|
schema in real-time — something we call "[Database Mirroring](/concepts/databases/#database-mirroring)".** Whether you
|
|
install fresh or on top of an existing database, you always maintain end-to-end control over your actual database,
|
|
including: tables, columns, datatypes, default values, indexes, relationships, etc.
|
|
|
|
Below is an overview to how Directus mirrors the database, and our non-technical naming convention.
|
|
|
|
- **[Project](/concepts/projects/)** — A Database (also includes asset storage and the config file)
|
|
- **[Collection](/concepts/collections/)** — A Database Table
|
|
- **[Fields](/concepts/fields/)** — A Database Column
|
|
- **[Item](/concepts/items/)** — A Database Record/Row
|
|
- **[Relationships](/concepts/relationships/)** — A Database Relationship, including additional non-standard types
|
|
- **[Type](/concepts/types/)** — A Database Data Type, including additional non-standard types
|
|
- **[Users](/concepts/users/)** — A Directus User (App or API), not to be confused with a Database User
|
|
|
|
Perhaps one of the biggest advantages of _Database Mirroring_ is that you have direct access to your pure and unaltered
|
|
data. That means you have the option to bypass the Directus middleware (API, SDK, App) and connect to your data with
|
|
proper SQL queries. This effectively removes all bottlenecks, latency overhead, and proprietary access limitations.
|
|
|
|
## Modular & Extensible
|
|
|
|
What makes Directus so flexible is that it has been designed from the ground up with complete extensibility, helping
|
|
avoid a feature ceiling. In addition to offering our software's codebase as open-source, we've included the following
|
|
extension types in the platform's App and API.
|
|
|
|
- **[Modules](/concepts/modules/)** — (App) The highest and broadest level of organization within the App
|
|
- **[Layouts](/concepts/layouts/)** — (App) How you browse, view or interact with a set of Items in a Collection
|
|
- **[Interfaces](/concepts/interfaces/)** — (App) How you view or interact with a field and its value
|
|
- **[Displays](/concepts/displays/)** — (App) A small inline preview of a field's value
|
|
- **[Panes](#)** — (App) A way to view dashboard data within the Insights Module
|
|
- **[Styles](/guides/styles/)** — (App) Whitelabeling through App Themes and CSS Overrides
|
|
- **[Endpoints](/guides/api-endpoints/)** — (API) Custom registered API endpoints
|
|
- **[Hooks](/guides/api-hooks/)** — (API) Event and interval hooks for triggering custom logic
|
|
- **[Email Templates](/guides/email-templates/)** — (API) Custom structure and formatting for emails
|
|
|
|
## Core Principles
|
|
|
|
Directus is a simple solution for complex problems, with a data-first approach guided by the following core principles:
|
|
|
|
- **Pure** — There is no predefined model or proprietary rules for your schema, and all system settings are stored
|
|
separately.
|
|
- **Open** — Our entire codebase is public and transparent, allowing for end-to-end audits. Nothing is obfuscated or
|
|
black-boxed.
|
|
- **Portable** — Data is stored in your bespoke database and can be migrated/exported/backed-up at any time. Absolutely
|
|
no vendor lock-in.
|
|
- **Limitless** — Create unlimited users, roles, languages, collections, and items. No arbitrary restrictions or paywall
|
|
limitations.
|
|
- **Extensible** — Every aspect of the platform is modular, allowing you to adapt, customize, and infinitely extend the
|
|
Core engine.
|
|
- **Unopinionated** — Choose your database (all SQL vendors), API (REST or GraphQL), and infra (self-hosted or Cloud).
|
|
|
|
## The Directus Ecosystem
|
|
|
|
### Open-Source Core
|
|
|
|
Our completely free and open-source (GPLv3) Open Data Platform. Directus includes our dynamic API engine (Node.js), the
|
|
intuitive Admin App (Vue.js), this documentation (Markdown), and all dependencies.
|
|
|
|
- **[GitHub Repository](https://github.com/directus/directus)**
|
|
- **[npm Package](https://www.npmjs.com/package/directus)**
|
|
- **[Docker Image](https://hub.docker.com/r/directus/directus)**
|
|
|
|
### Documentation
|
|
|
|
[Our documentation](https://docs.directus.io) describes the most recent version of our platform. They are written in
|
|
publicly managed markdown files so the community can help keep them clean and up-to-date. The docs are divided into the
|
|
following sections:
|
|
|
|
- [Getting Started](/getting-started/introduction/) — Novice oriented, for a platform intro and installation.
|
|
- [Concepts](/concepts/activity/) — Learning oriented, for understanding the platform.
|
|
- [Guides](/guides/projects/) — Problem oriented, follow along with steps while working.
|
|
- [Reference](/reference/command-line-interface/) — Information oriented, look up info and specs while working.
|
|
- [API Reference](/reference/api/introduction/) — Information oriented, look up API resources while working.
|
|
- [Contributing](/contributing/introduction/) — Contributor oriented — resources for working on Open-Source Core.
|
|
|
|
::: tip Versioned Docs
|
|
|
|
Specific version of the Docs ship with each install of Directus 9. They can be found within the
|
|
[Documentation module](/concepts/application#documentation) of the App.
|
|
|
|
:::
|
|
|
|
### On-Demand Cloud
|
|
|
|
[Our self-service platform](https://directus.cloud) for quick and affordable instances of Directus on a multitenant
|
|
infrastructure. Each project includes automatic updates, automatic backups, .
|
|
|
|
### Enterprise Cloud
|
|
|
|
Our premium managed solution. Powered by dedicated hardware in your selected region, this service offers
|
|
high-availability, custom limits, SSO, API white-labeling, uptime SLAs, and more.
|
|
[Contact our sales team](https://directus.io/contact/) to discuss pricing and options.
|
|
|
|
### Cloud Documentation
|
|
|
|
[Cloud-Specific Docs](https://directus.cloud/docs) include guides for managing projects within our Cloud Dashboard.
|
|
|
|
### Private Demos
|
|
|
|
Our On-Demand Cloud platform includes ability to
|
|
[create private demo instances](https://directus.cloud/docs#creating-a-private-demo). Each demo runs the latest version
|
|
of Directus, lasts for several hours, and is completely free, with no credit card required.
|
|
|
|
### System Status
|
|
|
|
The [Status Page](https://status.directus.cloud) provides up-to-date information on our various systems, including
|
|
current and historical incident details and our 30-day uptime percentage. From this site you can access the global
|
|
status or your Cloud project's dedicated status page.
|
|
|
|
### Website
|
|
|
|
Our [marketing site](https://directus.io) provides general information, resources, and team info for the project.
|
|
|
|
### Social
|
|
|
|
For the latest product info and sneak-peeks, be sure to follow us on [Twitter](https://twitter.com/directus).
|
|
|
|
### Videos
|
|
|
|
Our [YouTube Channel](https://www.youtube.com/c/DirectusVideos) has video tutorials, release updates, feature overviews,
|
|
and more.
|
|
|
|
### Community
|
|
|
|
Join our growing community of 4,000+ developers on [Discord](https://directus.chat) and Slack (legacy). From community
|
|
support to seeing where the platform is heading next, it's a great way to get involved.
|
|
|
|
### App Locales
|
|
|
|
We use [Crowdin](https://locales.directus.io/) to manage our numerous App translations. If you're looking to add or
|
|
improve Directus in your language, you can [learn more here](/contributing/translations/).
|
|
|
|
### Marketplace
|
|
|
|
Coming in 2021, the [Directus Marketplace](https://directus.market/) will offer a unified portal to extensions created
|
|
by our Core Team and community contributors.
|