0012a10249a05cf45927020bc07ccb602ac4e4c4
Extension & Server Projekt
Dieses Projekt besteht aus drei Hauptkomponenten:
Extension
- Zweck: Browser-Extension mit JWT-basierter Authentifizierung
- Speicherort:
/Extension - Empfängt JWT von der Web-App und kommuniziert mit dem Backend
Server (React Web App)
- Zweck: Login-Interface mit Appwrite-Authentifizierung
- Speicherort:
/Server - Basiert auf React mit Appwrite-Integration
- Sendet JWT an die Extension nach erfolgreichem Login
Backend
- Zweck: Serverseitige JWT-Validierung und API-Endpoints
- Speicherort:
/Server/backend - Node/Express Server mit Appwrite-Integration
- Validiert JWTs und führt privilegierte Aktionen aus
Getting Started
1. Backend starten
cd Server\backend
npm install
npm run dev
Das Backend läuft auf http://localhost:3000
Wichtig: Vor dem Start APPWRITE_API_KEY in Server/backend/.env eintragen!
2. React Web App starten
cd Server
npm install
npm run dev
Die Web-App läuft auf http://localhost:5173 (oder einem anderen Port, den Vite anzeigt)
Wichtig: Stelle sicher, dass Server/.env die korrekten Appwrite-Konfigurationswerte enthält:
VITE_APPWRITE_ENDPOINTVITE_APPWRITE_PROJECT_ID
3. Extension laden
- Öffne Chrome/Edge und gehe zu
chrome://extensions/(oderedge://extensions/) - Aktiviere "Entwicklermodus" (oben rechts)
- Klicke auf "Entpackte Erweiterung laden"
- Wähle den
Extension/Ordner aus - Die Extension sollte jetzt geladen sein
4. Testen
- Öffne die Web-App im Browser (
http://localhost:5173) - Du siehst den Login-Sperrbildschirm
- Logge dich mit deinen Appwrite-Credentials ein
- Nach erfolgreichem Login verschwindet der Sperrbildschirm
- Öffne die Extension (Klick auf das Extension-Icon)
- Du solltest "Authed: true" sehen
- Klicke auf "Test action" um die Backend-Verbindung zu testen
Projektstruktur
eship/
├── Extension/ # Browser-Extension
│ ├── manifest.json
│ ├── background.js
│ ├── content-script.js
│ ├── popup.html
│ └── popup.js
├── Server/ # React Web App
│ ├── src/
│ │ └── App.jsx # Login-Sperrbildschirm
│ ├── .env # Vite Env-Variablen
│ └── backend/ # Node/Express Backend
│ ├── server.js
│ ├── .env # Backend Env-Variablen
│ └── package.json
└── setup/ # Setup & Konfiguration
Konfiguration
Backend .env (Server/backend/.env)
APPWRITE_ENDPOINT=https://appwrite.webklar.com/v1
APPWRITE_PROJECT_ID=696b82bb0036d2e547ad
APPWRITE_API_KEY=<HIER_DEIN_API_KEY_EINTRAGEN>
PORT=3000
React App .env (Server/.env)
VITE_APPWRITE_ENDPOINT=https://appwrite.webklar.com/v1
VITE_APPWRITE_PROJECT_ID=696b82bb0036d2e547ad
Extension Backend URL (Extension/background.js)
const BACKEND_URL = "http://localhost:3000"; // Anpassen falls nötig
Description
Languages
JavaScript
94.3%
PowerShell
5.2%
CSS
0.3%
HTML
0.2%