Comenzi utile
Aceste comenzi ar trebui să fie executate din dosarul packages/twenty-server.
From any other folder you can run npx nx {command} twenty-server (or npx nx run twenty-server:{command}).
Configurare de la prima utilizare
npx nx database:reset twenty-server # setup the database with dev seeds
Pornirea serverului
npx nx run twenty-server:start
Lint
npx nx run twenty-server:lint # pass --fix to fix lint errors
Test
npx nx run twenty-server:test:unit # run unit tests
npx nx run twenty-server:test:integration # run integration tests
Notă: poți rula npx nx run twenty-server:test:integration:with-db-reset în cazul în care trebuie să resetezi baza de date înainte de a rula testele de integrare.
Resetarea bazei de date
Dacă vrei să resetezi și să configurezi baza de date, poți rula comanda următoare:
npx nx run twenty-server:database:reset
Migrații
npx nx run twenty-server:typeorm migration:generate src/database/typeorm/core/migrations/nameOfYourMigration -d src/database/typeorm/core/core.datasource.ts
Pentru obiectele din Workspace
Nu există fișiere de migrație, migrația este generată automat pentru fiecare spațiu de lucru,
este stocată în baza de date și aplicată cu această comandă
npx nx run twenty-server:command workspace:sync-metadata -f
Acest lucru va elimina baza de date și va relansa migrațiile și seed-urile.Asigură-te că faci un backup pentru orice date pe care dorești să le păstrezi înainte de a rula această comandă.
Tehnologii Utilizate
Twenty folosește în principal NestJS pentru backend.
Prisma a fost primul ORM pe care l-am folosit. Dar pentru a permite utilizatorilor să creeze câmpuri și obiecte personalizate, un nivel inferior a făcut mai mult sens, deoarece trebuie să avem un control detaliat. Proiectul folosește acum TypeORM.
Here’s what the tech stack now looks like.
Core
Bază de date
Integrări terțe
- Sentry pentru urmărirea erorilor
Testare
Instrumente
Dezvoltare