This is full-fledged E-Learning Website with all the basic things which any other website would used to have like signup and login page, profile updation page, Main page showing list of all courses, our website's testimonials, at the last contact us things. I have also made this mobile responsive so that mobile users can also get an experience of this application.
Note: Please note that till the time you are using it might be possible that the backend or frontend url might not work since I am on the free tier which is provided only for limited time and limited use.
Although there are still much things left out in this for me to work upon which I will surely add (specially in the admin point of view) like, adding or deleting courses or users that are curretly enrolled and much more.
For hosting, I have used one of the popular aws service AWS Amplify to host the frontend and Render to host the backend.
Note: You can also go with amplify for backend as well but this is something which I am still working on, so let me know if anyone knows about this to get my job done.
- Node installed in your system (check it by running either
node -v
ornpm -v
in your terminal) - URI String for MongoDB Atlas connection from here
- AWS Account
- Now clone this repo and navigate to the cloned folder.
git clone https://github.com/priyanshu-baran/E-Learning_Website.git && cd E-Learning_Website
- Open that cloned folder in VS Code and before moving further, simply open two terminals one with
frontend
folder and other withbackend
folder. - Install all the dependencies needed for this project by running this command (in both terminals seperately).
npm install
- Then do the required changes needed before running it, like replacing all the stuffs that you have, with mine one. For this you can simply create one
.env
file inside the backend folder and aws-exports.js in frontend folder. And add all that stuffs right inside it with appropriate name.Note: I have already defined these terms so be-careful so that you use that names only or else change in all places wherever it is used according to your wish.
- Now create your own aws cognito user pools and setup the build settings according to your requirements by leaving almost all other fields as default one. Now after successfull creation of user pool, head on to its settings and search for userpoolID and webclientID and save it somewhere in your project since we will use it inside our
frontend/src/App.js
file. - Now, since all setup part is done so let's move ahead by running this command, again in both the terminals seperately.
npm start
- If both of your terminals runs smoothly without showing any error, then congrats π₯³π you are in good state, else re-config your setup and try again π€π«£.
If you would like to contribute to this repo 'E-Learning_Website'
then, please fork the repository and submit a pull request with your changes. Contributions are welcome and encouraged!
If you are feeling generous, buy me a coffee...!!! β