Vollständig reaktionsschnelle einseitige Anwendung mit Mern Stack! ?
Technik verwendet
Reagieren
Knoten
Mongo DB
Äußern
Redux
Redis
Scherz
Datenbank verwendet
Mongo
Redis
Erste Schritte
Klonen Sie das Repo in Ihre lokale Umgebung, Sie müssen alle Abhängigkeiten für Backend und Frontend separat installieren.
Gehen Sie zum Backend zum Backend -Ordner (CD -Backend) und führen Sie npm i aus
MongoDB installieren
Oder Sie können die Website nutzen
Fügen Sie Ihre Umgebungsvariablen hinzu
Erstellen Sie eine .env -Datei im Stammverzeichnis des Backend -Ordners und fügen Sie dort Ihre Token in Bezug auf die Variablen für Konfigurationsdateien hinzu.
Access_token_secret = "ein Geheimnis"
Access_token_life = Zeit
ReABRESH_TOKE_SECRET = "Ein Geheimnis"
ReABRESH_TOKE_LIFE = Zeit
SendGrid_key = ""
Mongo_database = ""
OAuth2client = ""
STRIPE_SECRET_TOKE = ""
Redis_host = ""
Redis_password = ""
Redis_port = ""
HINWEIS: Stellen Sie sicher, dass die Variablen für .env -Dateien mit denen der Konfigurationsdateien wie das Bild unten übereinstimmen.
Für Frontend gehen Sie zum Frontend-Ordner (CD Front-End) und führen Sie npm i aus
Um eine Entwicklungsumgebung auszuführen, können Sie den Befehl npm start verwenden. Dadurch wird ein Entwicklungs-Webserver auf Port 3000 für Frontend und einen mit Nodemon angesehenen API-Server auf Port 8080 gestartet.
Hinweis: Sie müssen NPM -Start für Backend und Frontend separat machen.
Unit -Tests
Sie können das Backend und die Endpunkte mit dem Befehl (NPM -Test) testen, Endpunkte ausdrücken.
Docker komponieren
Coursera Clone wird dockerisiert und Docker Hub Repository finden Sie hier https://hub.docker.com/repository/docker/ayushverma/courserera/Ageneral
Wenn Sie Docker und Docker Compose verwenden, können Sie das gesamte Projekt starten mit:
docker-compose up
? Merkmale
Student
Authentifizierungssystem mit Anmeldung, Anmeldung, OTP -Überprüfung, Wiederversenden von OTP, Passwort (vollständig mit Bootstrap -Warnungen validiert)
Google Authentifizierung (OAuth2) unter Verwendung von React-Google-Login und Google Auth-Bibliothek
Stripe Payment Gateway integriert in Backend, um Kurse zu kaufen
Redux -Speicher , um Staaten problemlos zu verwalten
Homepage mit Kursen, die kategorisch abgerufen werden
Empfohlene Kurse basierend auf den Vorlieben des Benutzers
Bewertung der Kurse
Lesezeichen für Lesezeichen, in denen Benutzer ein Lesezeichen entfernen oder hinzufügen können
Ressourcen herunterladen (PDF - Notizen)
Responsive React Video Player für Videos
Fortschrittsbalken
Kurspapier mit allen Inhalten des Kurses
Suche nach Kurs und Lehrer
Echtzeit -Live -Gruppenklassen
Lehrer
Richtiges Authentifizierungssystem mit Anmeldung, Anmeldung, OTP -Überprüfung, Wiederversenden von OTP, Passwort vergessen (vollständig mit Bootstrap -Warnungen validiert)
Voll validierter Lehrer -Hochladen von Lehrern mit Beschreibung, Titel, Bild und anderen Details
Ckeditor zum Schreiben in Textbox mit Fähigkeiten zum Hinzufügen verschiedener Überschriften, Absätze, mutig, Kursivschrift, Link, Tabellen, Größen usw.
Der Lehrer kann bis zu 5 Videos mit Upload -Bar hochladen, um Fortschritte zu zeigen
Der Lehrer kann ihre hochgeladenen Kurse sehen
Lehrer kann ihren Kurs löschen
Lehrer kann ihren Kurs bearbeiten
Testen mit Scherz und Supertest für Expressendpunkte.
Echtzeit -Live -Gruppenklassen mit Socket.io und optimiert mit Redis zum Zwischenspeichern von Nachrichten