Improvements to the doc (#1989)
* Added Overview page * Revised Getting Started page * Minor revision * Edited readme, minor modifications to docs * Removed sweep.yaml, .devcontainer, .ergomake * Moved security.md to .github, added contributing.md * changes as per code review * updated contributing.md * fixed broken links & added missing links in doc, improved structure * fixed link in wsl setup * fixed server link, added https cloning in yarn-setup * removed package-lock.json * added doc card, admonitions * removed underline from nav buttons
This commit is contained in:
@ -15,7 +15,11 @@ We use React and Recoil for state management.
|
||||
|
||||
We recommend that you create as many atoms as you need to store your state.
|
||||
|
||||
**Rule of thumb:** It's better to use additional atoms than trying to be too concise with props drilling.
|
||||
:::tip
|
||||
|
||||
It's better to use additional atoms than trying to be too concise with props drilling.
|
||||
|
||||
:::
|
||||
|
||||
```tsx
|
||||
export const myAtomState = atom({
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
---
|
||||
title: Overview
|
||||
description: Overview
|
||||
sidebar_position: 0
|
||||
sidebar_custom_props:
|
||||
icon: TbEyeglass
|
||||
|
||||
@ -1,11 +1,13 @@
|
||||
---
|
||||
title: Frontend Development
|
||||
displayed_sidebar: frontendSidebar
|
||||
|
||||
sidebar_position: 0
|
||||
sidebar_custom_props:
|
||||
icon: TbTerminal2
|
||||
isSidebarRoot: true
|
||||
---
|
||||
|
||||
Welcome to the Frontend Development section of the documentation.
|
||||
Here you will find information about the frontend development process, the tools we use, and the best practices we follow.
|
||||
Here you will find information about the frontend development process, the tools we use, and the best practices we follow.
|
||||
|
||||
|
||||
|
||||
@ -5,5 +5,4 @@ sidebar_custom_props:
|
||||
icon: TbBrandFigma
|
||||
---
|
||||
|
||||
WIP
|
||||
|
||||
WIP
|
||||
@ -6,4 +6,4 @@
|
||||
"customProps": {
|
||||
"icon": "TbDeviceDesktop"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
title: Docker Setup
|
||||
sidebar_position: 2
|
||||
description: Set up the project with Docker.
|
||||
sidebar_custom_props:
|
||||
icon: TbBrandDocker
|
||||
---
|
||||
@ -46,7 +47,11 @@ PG_DATABASE_URL=postgres://twenty:twenty@postgres:5432/default?connection_limit=
|
||||
We provide an environment containerized with Docker and orchestrated with `docker-compose`.
|
||||
This installation method will also provision a PostgreSQL container.
|
||||
|
||||
> **Note:** The configuration for the build is stored in the `infra/dev` folder, but you can run `make` commands directly from the root folder.
|
||||
:::info
|
||||
|
||||
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
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
---
|
||||
title: IDE Setup
|
||||
sidebar_position: 4
|
||||
description: Our recommended IDE set up.
|
||||
sidebar_custom_props:
|
||||
icon: TbBrandVscode
|
||||
---
|
||||
|
||||
This section will help you setup your IDE for the project. If you haven't setup your development environment, please refer to our [local setup](/contributor/local-setup) section.
|
||||
This section will help you set up your IDE for the project. If you haven't setup your development environment, please refer to our [local setup](/contributor/local-setup) section.
|
||||
|
||||
|
||||
## Visual Studio Code
|
||||
|
||||
@ -7,9 +7,14 @@ sidebar_custom_props:
|
||||
import ThemedImage from '@theme/ThemedImage';
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
import DocCardList from '@theme/DocCardList';
|
||||
|
||||
|
||||
|
||||
Twenty is designed to be developer-friendly, and your local installation should be up and running in a few minutes.
|
||||
|
||||
<DocCardList/>
|
||||
|
||||
## Discord
|
||||
|
||||
If you have any questions or need help, you can join our [Discord](https://twenty.com/discord) server.
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
title: Troubleshooting
|
||||
sidebar_position: 5
|
||||
description: Common problems & their solutions.
|
||||
sidebar_custom_props:
|
||||
icon: TbExclamationCircle
|
||||
---
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
title: Windows WSL Setup
|
||||
sidebar_position: 3
|
||||
description: Install the project with WSL2.
|
||||
sidebar_custom_props:
|
||||
icon: TbBrandWindows
|
||||
---
|
||||
@ -37,8 +38,11 @@ Then, configure your git user name and email using the following commands, repla
|
||||
git config --global user.name "Your Name"
|
||||
git config --global user.email "youremail@domain.com"
|
||||
```
|
||||
:::note
|
||||
|
||||
>**Note:** If you don't have a Github account, create one now with the corresponding email address. We recommend that you setup a SSH key for your Github account. Follow the instructions [here](https://docs.github.com/fr/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent).
|
||||
If you don't have a Github account, create one now with the corresponding email address. We recommend that you setup a SSH key for your Github account. Follow the instructions [here](https://docs.github.com/fr/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent).
|
||||
|
||||
:::
|
||||
|
||||
### Step #2: Install Node.js, nvm, Yarn
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
title: Yarn Setup
|
||||
sidebar_position: 1
|
||||
description: "Set up the project with Yarn."
|
||||
sidebar_custom_props:
|
||||
icon: TbScript
|
||||
---
|
||||
@ -9,8 +10,11 @@ import TabItem from '@theme/TabItem';
|
||||
|
||||
In this document, you'll learn how to install the project using yarn. We recommend this method since it's the easiest way to get started but you can also run the project with [Docker](/contributor/local-setup/docker-setup) or [WSL2](/contributor/local-setup/wsl-setup).
|
||||
|
||||
:::info
|
||||
|
||||
> **Note:** `npm` currently does not support local packages satisfactorily. We strongly recommend using `yarn` instead.
|
||||
`npm` currently does not support local packages satisfactorily. We strongly recommend using `yarn` instead.
|
||||
|
||||
:::
|
||||
|
||||
## Prerequisites
|
||||
|
||||
@ -119,7 +123,11 @@ cp ./server/.env.example ./server/.env
|
||||
|
||||
## Step #4: Server setup
|
||||
|
||||
> **Note:** We recommend that you use `nvm` to install the correct `node` version. We have added a `server/.nvmrc` to ensure all contributors use the same version.
|
||||
:::info
|
||||
|
||||
We recommend that you use `nvm` to install the correct `node` version. We have added a `server/.nvmrc` to ensure all contributors use the same version.
|
||||
|
||||
:::
|
||||
|
||||
To build Twenty server and seed some data into your database, run the following commands:
|
||||
```bash
|
||||
@ -135,7 +143,12 @@ Twenty's server will be up and running at [http://localhost:3000/graphql](http:/
|
||||
|
||||
## Step #5: Frontend setup
|
||||
|
||||
> **Note:** For the frontend setup, too, we recommend using `nvm` to install the right node version.
|
||||
:::info
|
||||
|
||||
For the frontend setup, too, we recommend using `nvm` to install the right node version.
|
||||
|
||||
:::
|
||||
|
||||
To set up the frontend, run the following commands in your terminal:
|
||||
|
||||
```bash
|
||||
|
||||
@ -5,6 +5,21 @@ sidebar_custom_props:
|
||||
icon: TbEyeglass
|
||||
---
|
||||
|
||||
We use NestJS on the backend.
|
||||
We primarily use NestJS for our backend. We previously used to have Prisma as the ORM with a lot of auto-generated code under the hood. But since we want to offer flexibility so that users can create custom fields and custom objects, we needed something more low-level than Prisma to have more fine-grained control. This is why we switched to TypeORM. Here's what our tech stack now looks like.
|
||||
|
||||
More details coming Soon
|
||||
## Tech Stack
|
||||
- NestJS
|
||||
- TypeORM
|
||||
- GraphQL Yoga
|
||||
- Sentry
|
||||
- AWS EKS
|
||||
|
||||
**Database**
|
||||
- Postgres
|
||||
|
||||
**Testing**
|
||||
- Jest
|
||||
|
||||
**Tooling**
|
||||
- Yarn
|
||||
- ESLint
|
||||
4
docs/docs/developer/_category_.json
Normal file
4
docs/docs/developer/_category_.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Developer guide",
|
||||
"position": 4
|
||||
}
|
||||
10
docs/docs/developer/overview.mdx
Normal file
10
docs/docs/developer/overview.mdx
Normal file
@ -0,0 +1,10 @@
|
||||
---
|
||||
title: Overview
|
||||
sidebar_position: 1
|
||||
sidebar_class_name: coming-soon
|
||||
sidebar_custom_props:
|
||||
icon: TbArticle
|
||||
---
|
||||
|
||||
|
||||
Soon you'll be able to use our REST APIs to extend the app based on your needs.
|
||||
@ -25,7 +25,11 @@ 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).
|
||||
:::note
|
||||
|
||||
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 \
|
||||
|
||||
@ -8,8 +8,6 @@ custom_edit_url: null
|
||||
---
|
||||
import ThemedImage from '@theme/ThemedImage';
|
||||
|
||||
|
||||
|
||||
Twenty is an Open Source CRM.
|
||||
<ThemedImage sources={{light: "./img/light-doc-preview.png", dark:"./img/dark-doc-preview.png"}} style={{width:'100%', maxWidth:'800px'}}/>
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{
|
||||
"label": "Others",
|
||||
"position": 4
|
||||
"position": 5
|
||||
}
|
||||
|
||||
@ -6,6 +6,8 @@ sidebar_custom_props:
|
||||
---
|
||||
import ThemedImage from '@theme/ThemedImage';
|
||||
|
||||
|
||||
|
||||
Twenty is an Open Source CRM that provides flexibility, tailored to your business needs. It helps you break free from vendor lock-in and limitations, and provides the tools needed to harness the full potential of your data while ensuring a sleek and effortlessly intuitive design that teams will love to use.
|
||||
<ThemedImage sources={{light: "../img/light-doc-preview.png", dark:"./img/dark-doc-preview.png"}} style={{width:'100%', maxWidth:'800px'}}/>
|
||||
|
||||
|
||||
13646
docs/package-lock.json
generated
13646
docs/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -214,7 +214,7 @@ li.coming-soon a::after {
|
||||
}
|
||||
|
||||
.table-of-contents__link {
|
||||
text-decoration: none;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a.table-of-contents__link:hover{
|
||||
@ -228,6 +228,10 @@ a.table-of-contents__link:hover{
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
.pagination-nav__link{
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.tabs-container {
|
||||
padding: 20px;
|
||||
}
|
||||
@ -2,6 +2,7 @@ export {
|
||||
TbApps,
|
||||
TbArrowBackUp,
|
||||
TbArrowBigRight,
|
||||
TbArticle,
|
||||
TbBolt,
|
||||
TbBrandFigma,
|
||||
TbBrandVscode,
|
||||
|
||||
Reference in New Issue
Block a user