https://github.com/indiecodermm/e-learning-academy
E-learning platform where users can reserve online classes to schedule study sessions with learners in their area. Stack: Rails, Postgres, React, Redux, Bootstrap
https://github.com/indiecodermm/e-learning-academy
bootstrap capstone-project microverse rails react redux-toolkit
Last synced: 10 months ago
JSON representation
E-learning platform where users can reserve online classes to schedule study sessions with learners in their area. Stack: Rails, Postgres, React, Redux, Bootstrap
- Host: GitHub
- URL: https://github.com/indiecodermm/e-learning-academy
- Owner: IndieCoderMM
- License: mit
- Created: 2023-05-17T08:56:44.000Z (almost 3 years ago)
- Default Branch: dev
- Last Pushed: 2023-09-22T15:19:20.000Z (over 2 years ago)
- Last Synced: 2025-04-13T05:53:51.872Z (10 months ago)
- Topics: bootstrap, capstone-project, microverse, rails, react, redux-toolkit
- Language: JavaScript
- Homepage: https://classup.onrender.com/
- Size: 5.26 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/IndieCoderMM/e-learning-academy/graphs/contributors)
[](https://github.com/IndieCoderMM/e-learning-academy/commits/dev)
[](https://github.com/IndieCoderMM/e-learning-academy/stargazers)
[](https://github.com/IndieCoderMM/e-learning-academy/issues)
[](https://github.com/IndieCoderMM/e-learning-academy/blob/main/LICENSE)
Table of Contents
- [๐ ClassUp - Online Learning Platform ](#-classup---online-learning-platform-)
- [๐ธ Screenshots ](#-screenshots-)
- [๐ Live Demo](#-live-demo)
- [๐ Kanban Board](#-kanban-board)
- [๐งฐ Tech Stack ](#-tech-stack--)
- [โจ Key Features ](#-key-features--)
- [๐ Getting Started ](#-getting-started--)
- [๐ Prerequisites](#-prerequisites)
- [๐ Setup](#-setup)
- [๐ฅ Installation](#-installation)
- [๐พ Database](#-database)
- [๐ป Usage](#-usage)
- [๐ API](#-api)
- [๐งช Tests](#-tests)
- [๐จโ๐ป Authors ](#-authors--)
- [๐ฏ Future Features ](#-future-features--)
- [๐ Acknowledgements](#-acknowledgements)
- [๐ Resources](#-resources)
- [๐ค Contribution ](#-contribution--)
- [๐ Show Your Support ](#-show-your-support--)
- [๐ License ](#-license-)
# ๐ ClassUp - Online Learning Platform
**ClassUp** is a collaborative online learning platform developed as the final capstone project at Microverse.
Our website allows users to reserve online classes while also providing the opportunity to schedule study sessions with fellow learners in their area. By bridging the gap between virtual learning and real-world interactions, Classup creates a vibrant and collaborative learning environment for students of all backgrounds.
## ๐ Live Demo
You can checkout the live demo of our project at [classup.onrender.com](https://classup.onrender.com/)
## ๐ Kanban Board
We used a Kanban board to manage our tasks and track the progress of our project.
This is [the link to our Kanban Board](https://github.com/users/IndieCoderMM/projects/4).
We're a group of 3 members: [@tobuya](https://github.com/tobuya), [@tanveerisonline](https://github.com/tanveerisonline), [@IndieCoderMM](https://github.com/indiecodermm)

- **Back-end** ๐ป:
- [Ruby on Rails](https://rubyonrails.org/) - Creating API endpoints and managing databases
- [PostgreSQL](https://www.postgresql.org/) - Database management system
- **Front-end** ๐จ:
- [React](https://reactjs.org/) - Building user interfaces
- [Redux](https://redux.js.org/) - Managing states and API calls
- [Bootstrap](https://react-bootstrap.github.io/) - Pre-built UI components
- **Tools** ๐ :
- [Rspec](https://rspec.info/) - Testing models and requests
- [RSwag](https://github.com/rswag/rswag) - Documenting and testing API endpoints
- [Jest](https://jestjs.io/) - Unit tests for frontend components
- [Webpack](https://webpack.js.org/) - Module bundler for React/javascript
- [Render](https://render.com/) - Cloud platform for deployment
- Browse list of available courses
- Log in with a username and access all features
- Reserve online classes according to preferred time and location
- View upcoming classes and reservations
- Mobile-friendly and responsive design
To run this project locally, you'll need to follow these steps.
### ๐ Prerequisites
Make sure you have the following installed on your machine:
- [Ruby 3.1.3 or higher](https://www.ruby-lang.org/en/)
- [Rails 7.0.4 or higher](https://rubyonrails.org/)
- [PostgreSQL 15.2 or higher](https://www.postgresql.org/)
- [Node 18.14 or higher](https://nodejs.org/en)
### ๐ Setup
Clone this repository to your desired foler.
```sh
cd my-project
git clone git@github.com:IndieCoderMM/e-learning-academy.git .
```
### ๐ฅ Installation
Install the required gems with:
```sh
bundle install
```
Install the node dependencies with:
```sh
npm install
```
### ๐พ Database
Create the databases and run migrations with:
```sh
rails db:create
rails db:migrate
```
To load the sample data, run:
```sh
rails db:seed
```
### ๐ป Usage
Build the frontend assets with:
```sh
npm run build
```
To run the development server, execute the following command:
```sh
rails server
```
*Once the server is up and running, you can access the website on `http://localhost:3000`*
### ๐ API
To read the API documentation, visit `https://localhost:3000/api-docs`
### ๐งช Tests
To run tests, run the following command:
```sh
rspec spec --format doc
```
To test the frontend components, run:
```sh
npm test
```
We worked collectively on both the frontend and backend development, dividing features among us to ensure a well-rounded and efficient system.
Feel free to reach out to us with your suggestions, ideas, or feedback. We are always eager to improve our website.
๐ค **Thomas Obuya**
- GitHub: [@githubhandle](https://github.com/tobuya)
- Twitter: [@twitterhandle](https://twitter.com/MullerTheGreat1)
- LinkedIn: [LinkedIn](https://linkedin.com/in/tobuya)
๐ค **Tanveer Ahmad**
- GitHub: [@tanveerisonline](https://github.com/tanveerisonline)
- Twitter: [Tanveer Ahmad](https://twitter.com/Tanveer98589023)
- LinkedIn: [Tanveer Ahmad](https://www.linkedin.com/in/tanveer-ahmad-899462211/)
๐ค **Hein Thant**
- GitHub: [@IndieCoderMM](https://github.com/indiecodermm)
- LinkedIn: [@hthantoo](https://linkedin.com/in/hthantoo)
- Gmail: hthant00chk@gmail.com
- [ ] Implement secure *User authentication*
- [ ] Implement *Authorization* (Roles: Admin, Instructor, User)
- [ ] Add *Join-study-sessions Feature*
- [ ] Implement *Edit-courses Feature*
- [ ] Implement *Search Feature*
## ๐ Acknowledgements
This app was designed based on an original design idea by [Murat Korkmaz](https://www.behance.net/muratk) on Behance.
We would like to thank Murat Korkmaz for this inspiring design.
- [App Design Template](https://www.behance.net/gallery/26425031/Vespa-Responsive-Redesign)
## ๐ Resources
๐จ **Colors**
- ๐ข Accent: #96bf01
๐ **Fonts**
- Logo: [Pacifico](https://fonts.google.com/specimen/Pacifico)
- Title: [Tilt Warp](https://fonts.google.com/specimen/Tilt+Warp)
- Normal: [Roboto](https://fonts.google.com/specimen/Roboto)
๐ผ **Images**
- [Landscape Background](https://unsplash.com/photos/dWYU3i-mqEo?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
- [Portrait Background](https://unsplash.com/photos/vGgn0xLdy8s?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
Contributions, issues, and feature requests are welcome!
If you like this project, please consider giving it a โญ.
This project is [MIT](./LICENSE) licensed.