Skip to content
This repository has been archived by the owner on Sep 7, 2023. It is now read-only.
/ conversea-legacy Public archive

Aplicație pentru îmbunătățirea abilităților de comunicare într-o limbă străină

Notifications You must be signed in to change notification settings

v36u/conversea-legacy

Repository files navigation

Conversea 🌊

Preview

Prototip-Homepage Prototip-Register Prototip-Login

Instalare

  1. Actualizare NodeJS (minim versiunea 18)
  2. Clonare repo
  3. Rulare comandă pnpm install în terminal (din root-ul proiectului)
  4. Setare variabile în .env.local (vezi mai multe aici)
    a. Secretul pentru autentificare: NEXTAUTH_SECRET
    • Exemplu:
      NEXTAUTH_SECRET=abc123def
      
  5. După rularea comenzii pnpm dev, ar trebui să pornează aplicația pe http://localhost:3000/ și Prisma Studio pe http://localhost:5555/
    • Dacă apar erori, ping me

Tech stack

Bază: JavaScript + Typescript

Bibliotecă: React

Framework: Next.js

Kit UI: Bootstrap

Bază de date: PlanetScale (MySQL)

Autentificare: NextAuth.js (Folosind JWT)

Testing: Inițial foloseam playwright + vitest dar am întâmpinat niște probleme și le-am scos momentan -- eventual le vom readăuga pe parcurs

Tehnologii complementare:

  • Prisma - ORM optimizat pentru Next.js
  • TRPC - Sincronizare typing

Dev tools:

Hosting provider: Nu avem încă dar cred că vom folosi Vercel sau Render

Comenzi

  1. pnpm lint -- Căutare probleme în codebase (regulile se pot ajusta din ~/.eslintrc sau punctual folosind comentarii)
  2. pnpm dev -- Rulează aplicația în development mode astfel:
    1. Se rulează script-ul ~/scripts/predev.mjs pentru configurări și verificări necesare la începutul rulării
    2. Se rulează migrările de db și se adaugă dummy data
    3. În paralel:
      • Se pornește aplicația
      • Se pornește prisma studio (interfață vizuală pentru interacționare cu baza de date)
  3. pnpm build -- Creează un build de producție
  4. pnpm start -- Rulează aplicația în production mode. Este necesar să existe un build de producție făcut.
  5. pnpm prod -- Rulează pnpm build și pnpm start

Fișierele .env

În aceste fișiere se află variabile de configurație. Există un fișier de bază .env însă se mai pot adăuga și altele care depind de modul de rulare (de exemplu .env.development, .env.production, .env.test).

Pentru variabile cu valori care trebuie să fie private sau care pur și simplu sunt specifice doar mediului de lucru local, se pot adăuga: .env.local, .env.development.local, .env.production.local, etc. Acestea sunt incluse în .gitignore.

Ordinea suprascrierii este următoarea (voi folosi ca exemplu development însă această logică se aplică în toate cazurile):

  1. .env
  2. .env.development
  3. .env.local
  4. .env.development.local

Asta înseamnă că ce este declarat în .env.development.local va suprascrie orice altceva.

About

Aplicație pentru îmbunătățirea abilităților de comunicare într-o limbă străină

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published