This is an education App built with React, Redux, Express.js and MongoDB. Additional technologies include google cloud API and the YouTube API.
-
Please clone this repository using
git clone https://github.com/storatus/react-education-app.git
first. There will be two package.json files, one for the server side and the other for the client side. This is because server and client have to start at the same time. If you do not have NPM installed, please do so athttps://www.npmjs.com
. This is also a very good project for having a starter platform with react.js and redux. -
In your directory after cloning please do the following:
Install dependencies for server in
package.json
$ cd react-education-app
$ npm install
Install dependencies on client side
$ cd react-education-app/client
$ npm install
In order to use the web app you need to register for the Google cloud storage API. Please visit the website for registering. You will also need an gCloud API key which you can get here .
- Please go to
storage.json
and put your gCloud data accordingly - In
server/config.js
please change the following data:
const bucketName = '' // Here comes your bucketName
const Storage = require('@google-cloud/storage');
const projectId = ''; // Here comes your project ID
- You can you any database service for MongoDB. I recommend using Mlab . The go to
server/configDB.js
and change your data accordingly.
mongoose.connect(''); // Here put the database you want to connect to.
- Finally, please go to
client/src/components/Course/CourseVideos
and change to your youTube key. You can get it here :
let youtubeKey = ''; // Put your youtube key here
As an Admin you are able to:
- Create Courses
- Create Students
- Enable/Disable Courses
- Upload Files
- Upload YouTube videos
As a student you can:
- Attend Courses
- Review Courses
- Download files
- Watch Youtube videos that were previously uploaded to Youtube.
This web app has been tested regirously and is fully responsive.
Please visit my website . I am always open for new projects and freelance work.
- MIT license
- Copyright 2018 © Sebastian Glahn .