README vervollständigt
This commit is contained in:
parent
cf4c3cb8ad
commit
37c1cfd46f
93
README.md
93
README.md
|
@ -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
10
app.js
|
@ -415,11 +415,11 @@ app.get("/project/:id", async (req, res) => {
|
||||||
const url = `${projekt.repository_link}/raw/branch/main/README.md`;
|
const url = `${projekt.repository_link}/raw/branch/main/README.md`;
|
||||||
|
|
||||||
// Abrufen der Datei
|
// Abrufen der Datei
|
||||||
// const response = await axios.get(url);
|
const response = await axios.get(url);
|
||||||
|
console.log(response.data);
|
||||||
// Markdown-Inhalt in HTML umwandeln
|
// Markdown-Inhalt in HTML umwandeln
|
||||||
// const htmlContent = marked(response.data);
|
const htmlContent = marked(response.data);
|
||||||
const htmlContent = "Testdata";
|
//const htmlContent = "Testdata";
|
||||||
if (!projekt) {
|
if (!projekt) {
|
||||||
return res.status(404).send("Projekt nicht gefunden");
|
return res.status(404).send("Projekt nicht gefunden");
|
||||||
}
|
}
|
||||||
|
@ -431,7 +431,7 @@ app.get("/project/:id", async (req, res) => {
|
||||||
});
|
});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err);
|
console.error(err);
|
||||||
res.send("Fehler beim Abrufen des Projekts");
|
res.send(err);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue