Files
directus/docs/concepts/projects.md
Rijk van Zanten 817ccf3620 Overhaul docs (#3951)
* Add Quickstart Guide

* Update installation

* Remove unused files

* Update support/backing

* Tweaks in concepts

* Setup file structure for API reference 2.0

* Setup page layout for reference

* Add clean-urls plugin

* getting started updates

* Finish authentication rest

* getting started updates

* Render stylus in 2 spaces

* Various

* Various

* Finish activity docs

* Add collections reference

* Add extension reference

* concepts updates

* Fields/tweaks

* Add files doc

* Add revisions

* concepts docs

* More api reference

* Finish rest api reference (finally)

* initial concepts

* More things

* Add assets api ref

* Move sections from file to assets

* Add environment variables

* contributing docs

* Add field transforms page

* Left align table headers

* concept links

* Add API config

* Fix mobile nav

* Add migrating a project

* doc link fixes

Co-authored-by: Ben Haynes <ben@rngr.org>
2021-02-05 18:51:54 -05:00

2.1 KiB

Projects

A Project is a complete instance of Directus. Each project represents a Database, but also encapsulates a config file, asset storage, and any custom extensions.

Projects are the highest level of structure in Directus. While there are many customizable facets to a Project, you can essentially think of them as individual Databases.

Relevant Guides

Environments

This compartmentalized approach means you can also create different Environments (eg: Dev, Staging, Prod) simply by creating additional Project instances. In short, there is no difference between a Project and an Environment.

Relevant Guides

Multitenancy

Previous versions of Directus allowed managing multiple databases within a single installation. However this because overly complex in the scoping of routes, API endpoints, and custom code. In Directus 9+, to create multitenancy you have several options:

  • Project Scoping — Creating a super-admin layer that provisions new tenant projects has been made easier by the Cloud-native model of Directus 9+. This method involves developing custom code that can dynamically spin up/down projects, but is also the most flexible, supporting scoped extensions and differentiated project settings.
  • Role Scoping — In this method, you create one Role per tenant, and configure their permissions to properly scope them within a single project. This direction allows for tenants to share a single schema using item scoped permissions, or different schemas by using collection scoped permissions.