diff --git a/docs/docs/developer/glossary.mdx b/docs/docs/developer/glossary.mdx index 6c01aabab..0092e00ad 100644 --- a/docs/docs/developer/glossary.mdx +++ b/docs/docs/developer/glossary.mdx @@ -6,14 +6,14 @@ sidebar_custom_props: ### Workspace A `Workspace` usually represents a company using Twenty. -It's attached to a single domain name, which is usually the domain name you company uses for your employee email addresses. +It is attached to a single domain name, which is usually the domain name your company uses for employee email addresses. ### Company & People -They are the two fundamental types of records that the CRM is built around. -A `Company` represents a business or an organization. `People` represents an individual you are doing business with or would like to do business with. +They are the two fundamental types of records that the CRM is built around: +- A `Company` represents a business or organization. +- `People` represent your company's current and prospective customers or clients. ### Pipelines -A `Pipeline` is a way to track a business process. -`Pipeline`s are categorized within a module and have stages: -- A module is the business characterizations of your process (e.g. sales, recruiting). -- Stages maps the steps in your process (e.g. new, ongoing, won, lost) +A `Pipeline` is a way to track a business process. Pipelines are categorized within a *module* and have *stages*: +- A **module** contains the logic for a certain business process (e.g. sales, recruiting). +- **Stages** map the steps in your process (e.g. new, ongoing, won, lost). diff --git a/docs/docs/developer/local-setup.mdx b/docs/docs/developer/local-setup.mdx index ad0856cd7..0dd3db10b 100644 --- a/docs/docs/developer/local-setup.mdx +++ b/docs/docs/developer/local-setup.mdx @@ -10,8 +10,8 @@ This section will guide you through the Twenty installation on your local enviro Twenty is designed to be developer-friendly, and your local installation should be up and running in a few minutes. In a nutshell: -- We recommend using `yarn` installation but we also provide an easy way to provide the project with Docker. -- Twenty uses PostgreSQL as a database. If we don't have one available, we also provide a one-line command to provision a PostgreSQL instance through Docker. +- We recommend using `yarn` installation but we also provide an easy way to run the project with Docker. +- Twenty uses PostgreSQL as a database. If you don't a PostgreSQL instance available, we also provide a one-line command to provision one through Docker. The repository is structured as follows: ``` @@ -19,12 +19,12 @@ twenty └───docs // contains this documentation └───front // contains the frontend code for the application └───server // contains the backend code for the application -└───infra // contains docker development/production-ready deployment configuration +└───infra // contains docker configurations for development and production deployments ``` ## Yarn install (recommended) -**Note:** `npm` is currently not supporting local packages satisfactorily. We strongly recommend using `yarn` instead. +**Note:** `npm` currently does not support local packages satisfactorily. We strongly recommend using `yarn` instead. ### 1. Pre-requisites @@ -41,19 +41,19 @@ You also need to have a PosgresSQL database available. If you already have one a If you don't, you can provision one through `docker` using the following command: -``` +```bash cd twenty make provision-postgres ``` -This will create a docker container, exposing a PostgreSQL instance at [http://localhost:5432](http://localhost:5432). +This will create a Docker container, exposing a PostgresSQL instance at [http://localhost:5432](http://localhost:5432). ### 4. Setup env variables -Twenty requires a few environment variables to be set. Locally, we recommend setting them through `.env` file. +Twenty requires a few environment variables to be set. Locally, we recommend setting them through a `.env` file. -To do so, make a copy of .env.example files: -``` +To do so, make copies of the `.env.example` files in `/front` and `/server`: +```bash cp ./front/.env.example ./front/.env cp ./server/.env.example ./server/.env ``` @@ -65,7 +65,7 @@ The default values should work out of the box. Don't forget to update the databa **Note:** we recommend that you use `nvm` to install the correct `node` version. We have added a `server/.nvmrc` to ensure all contributors are using the same version. To build Twenty server and seed some data into your database: -``` +```bash cd server nvm install #recommended nvm use #recommended @@ -76,11 +76,11 @@ yarn start:dev Twenty server will be running at [http://localhost:3000](http://localhost:3000). -### 6. Front setup +### 6. Frontend setup **Note:** similarly, we recommend that you use `nvm` to install the right node version. -``` +```bash cd ../front nvm install #recommended nvm use #recommended @@ -92,30 +92,30 @@ Twenty front will be running at [http://localhost:3001](http://localhost:3001). ### 7. Sign in to your local Twenty installation -Browse [http://localhost:3001](http://localhost:3001). You can connect using our recently seeded demo account `tim@apple.dev`. +Open [http://localhost:3001](http://localhost:3001) in your web browser. You can login using our seeded demo account: `tim@apple.dev`. ## Docker install -If you wish, you can also provision the project with docker. This come with a few advantages: +You can also provision the project with Docker. This comes with a few advantages: - It provides the exact same environment as our core developer team. - It includes some additional dependencies (such as `playwright`) that you might need if you wish to contribute to some advanced areas of the project. -- It provisions a postgres database. +- It provisions a PostgreSQL database. ### 1. Pre-requisites Make sure you have the latest `Docker` and [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) versions installed on your computer. -You can run `docker --version` to check they it is installed. +You can run `docker --version` to verify the installation. ### 2. Git clone -``` +```bash git clone git@github.com:twentyhq/twenty.git ``` ### 3. Setup env variables -Twenty requires a few environment variables to be set. Locally, we recommend setting them through `.env` pattern. -``` +Twenty requires a few environment variables to be set. Locally, we recommend setting them through `.env` files. +```bash cp ./front/.env.example ./front/.env cp ./server/.env.example ./server/.env ``` @@ -123,60 +123,61 @@ The default values should work out of the box. ### 4. Build -We provide a containerized environment with Docker and orchestrated with docker-compose. -This install will also provision a Postgres container. +We provide an environment containerized with Docker and orchestrated with `docker-compose`. +This installation method will also provision a PostgreSQL container. -**Note:** the configuration is stored `infra/dev` folder but you can run `make` commands direclty from the root folder. +**Note:** the configuration for the build is stored in the `infra/dev` folder, but you can run `make` commands directly from the root folder. -``` +```bash make build ``` ### 5. Migrate & seed -Before running the project, you need to initialize the database by running migration and seeds. +Before running the project, you need to initialize the database by running the migrations and seed. Start the containers: -``` +```bash make up ``` -Run database migrations, generate prisma client and seed: -``` +Run database migrations, generate prisma client, and seed: +```bash make server-prisma-reset ``` ### 6. Start Twenty -Once this is completed you can run the project with the following commands: +Run the project with the following commands: -front: -``` +In `/front`: +```bash make front-start ``` -server: -``` +In `/server`: +```bash make server-start ``` -- front available on: [http://localhost:3001](http://localhost:3001) -- server available on: [http://localhost:3000/graphql](http://localhost:3000/graphql) -- postgres: available on [http://localhost:5432](http://localhost:5432) and should contain database named `default` +You should now have: +- **front** available on: [http://localhost:3001](http://localhost:3001) +- **server** available on: [http://localhost:3000/graphql](http://localhost:3000/graphql) +- **postgres** available on [http://localhost:5432](http://localhost:5432) and containing database named `default` ### 7. Sign in to your local Twenty installation -Browse [http://localhost:3001](http://localhost:3001). You can connect using our recently seeded demo account `tim@apple.dev`. +Open [http://localhost:3001](http://localhost:3001) and sign in using our seeded demo account `tim@apple.dev`. ### 8. (Optional) -If you don't want to use make command and work directly from the container, you can also ssh directly in the container +If you don't want to use the `make` command and work directly from the container, you can also ssh directly into the container: -``` +```bash make sh ``` Then run commands through yarn: -``` +```bash cd server yarn prisma:reset ``` diff --git a/docs/docs/developer/workflows.mdx b/docs/docs/developer/workflows.mdx index 4b161e2c9..f1a0098c6 100644 --- a/docs/docs/developer/workflows.mdx +++ b/docs/docs/developer/workflows.mdx @@ -9,9 +9,9 @@ sidebar_custom_props: If you are using VSCode, we provide a [.vscode](https://github.com/twentyhq/twenty/tree/main/.vscode) configuration. -## Front development commands +## Frontend development commands -``` +```bash yarn # install dependencies yarn start # start local development server diff --git a/docs/docs/hosting/self-hosting.mdx b/docs/docs/hosting/self-hosting.mdx index 2c732efd9..cb15efdcb 100644 --- a/docs/docs/hosting/self-hosting.mdx +++ b/docs/docs/hosting/self-hosting.mdx @@ -4,20 +4,20 @@ sidebar_custom_props: --- # Self-hosting -Right now, docker containers are the only option we currently support. However we are actively working on providing simple options to self host Twenty yourself. +Right now, Docker containers are the only hosting option we support. However we are actively working on providing simple options to self-host Twenty. Feel free to open issues on [Github](https://github.com/twentyhq/twenty) if you want a specific cloud provider to be supported. -Refer to this list to see what future options will be available +Refer to this list to see what future options will be available. ## Production docker containers -We provide a production-ready set of `Dockerfile` to allow you to build your own image and deploy it to your favorite cloud provider (Amazon Web Services, Google Cloud Platform, ...) +We provide a production-ready set of `Dockerfile`s to allow you to build your own image and deploy it to your favorite cloud provider (Amazon Web Services, Google Cloud Platform, etc.). -You will find these in [infra/prod/front/Dockerfile](https://github.com/twentyhq/twenty/blob/main/infra/prod/front/Dockerfile) and [infra/prod/server/Dockerfile](https://github.com/twentyhq/twenty/blob/main/infra/prod/server/Dockerfile) files. +You will find these in the [infra/prod/front/Dockerfile](https://github.com/twentyhq/twenty/blob/main/infra/prod/front/Dockerfile) and [infra/prod/server/Dockerfile](https://github.com/twentyhq/twenty/blob/main/infra/prod/server/Dockerfile) files. ### Front -``` +```bash docker build \ --build-arg REACT_APP_API_URL=REPLACE_ME \ --build-arg REACT_APP_AUTH_URL=REPLACE_ME \ @@ -28,18 +28,18 @@ docker build \ ### Server -``` +> To run the server, you will need to set the environment variables listed [here](https://github.com/twentyhq/twenty/blob/main/server/.env.example). + +```bash docker build \ -t twenty-server:latest \ -f ./infra/prod/server/Dockerfile . ``` -To run the server, you will need to set a few environment variables you can find [here](https://github.com/twentyhq/twenty/blob/main/server/.env.example). +## AWS Elastic Beanstalk (soon) -## Ready-to-deploy joint image (soon) - -We are working on providing a joint docker image containing Twenty front and server, that you can deploy to Amazon Web Services (Elastic Beanstalk). +We are working on providing a joint Docker image - containing both the Twenty frontend and server - that you can deploy using [AWS Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk/). ## Railway (soon) -[Railway](https://railway.app) is an infrastructure platform that let you deploy to the cloud in one-click. We are currently working on making it available. \ No newline at end of file +[Railway](https://railway.app) is an infrastructure platform that lets you deploy to the cloud in one click. We are currently working on making it available. \ No newline at end of file diff --git a/docs/docs/index.mdx b/docs/docs/index.mdx index ec215ce57..75c6c739b 100644 --- a/docs/docs/index.mdx +++ b/docs/docs/index.mdx @@ -18,7 +18,7 @@ At first, CRM platforms were just for sales teams. But now, they've grown to cover more than just sales - they handle many aspects of running a business. This has often left in-house engineering teams out of the loop, making companies rely more on outside help to manage their CRM needs. -Our team has a shared passion for crafting beautiful product with great attention to details. +Our team has a shared passion for crafting beautiful products with great attention to details. And we are starting this project with one key goal: to put the power back in the hands of the people who use CRM systems every day. We wish to create a tool that users will enjoy, and that engineers will want to make their own and customize for their company's specific needs. @@ -27,7 +27,7 @@ We wish to create a tool that users will enjoy, and that engineers will want to There are three ways for you to get started with Twenty: - **Cloud:** the fastest and easiest way to try the app (it's free) - **Local:** if you're a developer and would like to experiment or contribute to the app -- **Self-hosting:** if you want greater control over your data and to run the app on your own server +- **Self-hosting:** if you want greater control over your data and want to run the app on your own server See our [Getting Started](./start/getting-started/) guide to learn more. diff --git a/docs/docs/others/telemetry.mdx b/docs/docs/others/telemetry.mdx index 45226d225..70a2f364b 100644 --- a/docs/docs/others/telemetry.mdx +++ b/docs/docs/others/telemetry.mdx @@ -4,13 +4,13 @@ sidebar_custom_props: --- # Data collected -We record page view events using a unique identifier for each workspace/user. -Additionally we also collect the workspace's domain. -We do not set any cookie for telemetry. -We do not collect any email, first name, last name, phone number, date of birth, address, username, etc. +We record pageview events using a unique identifier for each workspace/user. +We also collect the workspace's domain. +We do not use cookies for telemetry. +We do not collect email addresses, names, phone numbers, dates of birth, addresses, usernames, or other PII. # Opting-out of telemetry -Opting out is simple. To do this, edit your .env on the server side and include the following: +To disable telemetry in your workspace, add the following line to your `server/.env` file: ``` IS_TELEMETRY_ENABLED=false ``` \ No newline at end of file diff --git a/docs/docs/start/getting-started.mdx b/docs/docs/start/getting-started.mdx index d7bfc5d6f..00415fcc3 100644 --- a/docs/docs/start/getting-started.mdx +++ b/docs/docs/start/getting-started.mdx @@ -16,4 +16,4 @@ The signup is free. ## Developer documentation -If you are looking to locally install the project, either to try it or to contribute, you will find all the information you need in our [developer guide](../developer/local-setup). +If you are looking to install the project locally, either to try it or to contribute, check out our [developer guide](../developer/local-setup).