---
title: Backend Commands
image: "\x102Fbilder\x112Fanv\x101ndarhandbok\x10Fkanban-vyer\x10Fkanban.png"
---

<Frame>
  <img src="/images/user-guide/kanban-views/kanban.png" alt="Header" />
</Frame>

## Användbara kommandon

Dessa kommandon ska köras från mappen packages/twenty-server.
From any other folder you can run `npx nx {command} twenty-server` (or `npx nx run twenty-server:{command}`).

### Första gångens installation

```
npx nx database:reset twenty-server # setup the database with dev seeds
```

### Starting the server

```
npx nx run twenty-server:start
```

### Lint

```
npx nx run twenty-server:lint # pass --fix to fix lint errors
```

### Testa

```
npx nx run twenty-server:test:unit          # run unit tests
npx nx run twenty-server:test:integration   # run integration tests
```

Notera: du kan köra `npx nx run twenty-server:test:integration:with-db-reset` om du behöver återställa databasen innan du kör integrationstesterna.

### Återställning av databasen

Om du vill återställa och fylla databasen, kan du köra följande kommando:

```bash
npx nx run twenty-server:database:reset
```

### Migrationer

#### För objekt i Core/Metadata-scheman (TypeORM)

```bash
npx nx run twenty-server:typeorm migration:generate src/database/typeorm/core/migrations/nameOfYourMigration -d src/database/typeorm/core/core.datasource.ts
```

#### För arbetsytaobjekt

Det finns inga migrationsfiler, migrationer genereras automatiskt för varje arbetsyta,
lagras i databasen och tillämpas med det här kommandot

```bash
npx nx run twenty-server:command workspace:sync-metadata -f
```

<Warning>

Detta kommer att ta bort databasen och köra om migrationerna och seederna.

Se till att säkerhetskopiera all data du vill behålla innan du kör det här kommandot.

</Warning>

## Teknisk stack

Twenty använder främst NestJS för backend.

Prisma var den första ORM vi använde. Men för att tillåta användare att skapa anpassade fält och anpassade objekt, var det mer meningsfullt med en lägre nivå eftersom vi behöver ha detaljerad kontroll. Projektet använder nu TypeORM.

Här är hur teknikstacken ser ut nu.

**Kärna**

- [NestJS](https://nestjs.com/)
- [TypeORM](https://typeorm.io/)
- [GraphQL Yoga](https://the-guild.dev/graphql/yoga-server)

**Databas**

- [Postgres](https://www.postgresql.org/)

**Tredjepartsintegrationer**

- [Sentry](https://sentry.io/welcome/) för spårning av buggar

**Testning**

- [Jest](https://jestjs.io/)

**Verktyg**

- [Yarn](https://yarnpkg.com/)
- [ESLint](https://eslint.org/)

**Utveckling**

- [AWS EKS](https://aws.amazon.com/eks/)

