README vervollständigt

This commit is contained in:
klaas 2024-09-09 16:16:40 +02:00
parent cf4c3cb8ad
commit 37c1cfd46f
2 changed files with 97 additions and 6 deletions

View File

@ -1 +1,92 @@
# WebApp
# Meine persönliche Test- und Präsentationswebsite
Willkommen auf meiner persönlichen Website! Diese Seite dient als Plattform, um neue Module zu testen und mich selbst zu präsentieren. Zusätzlich bietet die Website einige nützliche Funktionen, darunter eine Login-Seite für registrierte Nutzer und einen QR-Code-Generator. Es gibt auch ein Kontaktformular für Notfälle, das es anderen ermöglicht, mich zu benachrichtigen, wenn etwas mit meinem Auto passiert.
## Funktionen
### 1. **Startseite**
- Überblick über meine Projekte und Interessen.
- Vorstellung meiner Person und meiner Arbeit.
### 2. **Login-Funktion**
- Registrierte Nutzer können sich einloggen, um Zugriff auf erweiterte Funktionen zu erhalten.
- Sicherheit wird durch eine sichere Passwortspeicherung und Authentifizierung gewährleistet.
### 3. **QR-Code Generator (für angemeldete Nutzer)**
- Erlaubt es angemeldeten Nutzern, QR-Codes für verschiedene Zwecke zu generieren.
- Einfaches Interface zum Erstellen und Herunterladen von QR-Codes.
### 4. **Kontaktseite für Notfälle**
- Ein spezielles Formular, das von anderen genutzt werden kann, um mich in dringenden Fällen zu kontaktieren, wie bei einem Unfall oder einem Einbruch in mein Auto.
- Das Formular sendet automatisch eine Benachrichtigung per Telegram an mich.
- Ein QR-Code zu dieser Seite befindet sich sichtbar im Auto, sodass Helfer schnell und unkompliziert eine Nachricht senden können.
## Installation und Einrichtung
### Voraussetzungen
- Node.js und npm sollten auf deinem Rechner installiert sein.
- Ein Telegram-Bot sollte eingerichtet sein, um Benachrichtigungen zu empfangen.
### Installation
1. Klone dieses Repository:
```bash
git clone https://git.boergmann.it/klaas/homeboergmann.git
cd repositoryname
```
2. Installiere die Abhängigkeiten:
```bash
npm install
```
3. Konfiguriere die Umgebungsvariablen:
- Erstelle eine `.env` Datei im Hauptverzeichnis und füge die folgenden Variablen hinzu:
```plaintext
TELEGRAM_BOT_TOKEN=your-telegram-bot-token
TELEGRAM_CHAT_ID=your-telegram-chat-id
```
4. Starte die Anwendung:
```bash
npm start
```
Die Anwendung läuft nun auf `http://localhost:3000`.
## Nutzung
### QR-Code Generator
Nach dem Login können Nutzer auf den QR-Code-Generator zugreifen. Hier können sie QR-Codes für URLs, Text oder andere Inhalte erstellen und herunterladen.
### Notfall-Kontaktformular
Die Kontaktseite ist über einen QR-Code zugänglich, der sich im Auto befindet. Wenn jemand das Formular ausfüllt, wird automatisch eine Nachricht per Telegram an mich gesendet, sodass ich sofort benachrichtigt werde.
## Technologie-Stack
- **Backend:** Node.js, Express
- **Frontend:** EJS, Bootstrap
- **Authentifizierung:** Passport.js
- **QR-Code-Generierung:** `qrcode` npm-Paket
- **Benachrichtigungen:** Telegram Bot API
- **Hosting:** Kann auf jedem Node.js-fähigen Server betrieben werden
## Beiträge
Beiträge und Verbesserungsvorschläge sind herzlich willkommen! Bitte erstelle einen Pull Request oder öffne ein Issue, um Ideen einzubringen.
## Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Informationen findest du in der Datei `LICENSE`.

10
app.js
View File

@ -415,11 +415,11 @@ app.get("/project/:id", async (req, res) => {
const url = `${projekt.repository_link}/raw/branch/main/README.md`;
// Abrufen der Datei
// const response = await axios.get(url);
const response = await axios.get(url);
console.log(response.data);
// Markdown-Inhalt in HTML umwandeln
// const htmlContent = marked(response.data);
const htmlContent = "Testdata";
const htmlContent = marked(response.data);
//const htmlContent = "Testdata";
if (!projekt) {
return res.status(404).send("Projekt nicht gefunden");
}
@ -431,7 +431,7 @@ app.get("/project/:id", async (req, res) => {
});
} catch (err) {
console.error(err);
res.send("Fehler beim Abrufen des Projekts");
res.send(err);
}
});