VogelSocialMedia/code/backend
MisbehavedNinjaRadiator d11f92e11a Feed done.
2025-07-01 09:45:15 +02:00
..
prisma added endpoints for profile and feed 2025-06-26 13:08:47 +02:00
scripts add refresh token endpoints 2025-06-20 17:09:10 +02:00
src Feed done. 2025-07-01 09:45:15 +02:00
.env.example added some comments 2025-05-20 09:46:26 +02:00
package.json Merge branch 'master' into enhanceHeader 2025-06-29 19:31:45 +02:00
README.md updated README 2025-05-20 09:46:26 +02:00
tsconfig.json added endpoints for profile and feed 2025-06-26 13:08:47 +02:00
yarn.lock run yarn install in backend 2025-06-29 19:31:45 +02:00

📦 Verwendete Software

  • Backend: Node.js
  • Datenbank: PostgreSQL in Docker
  • ORM: Prisma

▶️ Backend starten

Dieser Befehl startet das Backend, nachdem es korrekt installiert wurde: DB in Docker

yarn start

DB nicht in Docker

yarn start-no-docker

Die Swagger-Dokumentation findest du unter: http://localhost:3000/api-docs


🛠️ Installation

🚀 Installation mit Docker

  1. Docker installieren
  2. falls du schon PostgreSQL installiert hast musst du die Anwendung stoppen um Portkonflikte zu vermeiden.
  3. Installations-Skript im backend Ordner ausführen:
yarn install-script

🧱 Manuelle Installation

1. PostgreSQL installieren

🔹 Windows

PostgreSQL kannst du hier herunterladen: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

🔹 Linux

PostgreSQL über deinen Paketmanager installieren. Danach den Dienst aktivieren:

sudo systemctl enable postgresql --now

2. In eine SQL-Shell wechseln

🔹 Windows
psql
🔹 Linux
sudo -iu postgres psql

3. Benutzer und Datenbank anlegen

In der geöffneten psql-Shell:

CREATE DATABASE prisma;

4. .env-Datei vorbereiten

  • Die Datei .env.example kopieren und die Kopie in .env umbenennen
  • Passwort und Token-Secret anpassen

5. Prisma vorbereiten

Im Projektordner folgenden Befehl ausführen, um den Prisma-Client zu generieren:

yarn prisma generate

6. Datenbank initialisieren

Dies erstellt die Datenbank anhand der schema.prisma:

yarn prisma migrate dev --name init