A React-based frontend for the Abacus Academy e-learning platform.
- User authentication with Firebase
- Role-based access control (Student/Teacher)
- Course catalog and management
- Video content viewing
- Course enrollment system
- Responsive design with Tailwind CSS
- Email notifications with EmailJS
- React 18
- React Router v6
- Firebase Authentication
- Tailwind CSS
- DaisyUI
- EmailJS
- React Hook Form
- React Hot Toast
- React Helmet
- AOS (Animate On Scroll)
- Node.js (v14 or higher)
- npm or yarn
- Firebase account
- EmailJS account
- Clone the repository:
git clone https://github.com/rakibul58/abacus-academy.git
cd abacus-academy-client
- Install dependencies:
npm install
- Create a
.env.local
file in the root directory with your Firebase and EmailJS configurations:
REACT_APP_imgbb_key=
- Start the development server:
npm start
npm start
- Runs the app in development modenpm build
- Builds the app for productionnpm test
- Runs the test suitenpm eject
- Ejects from Create React App
src/
├── components/
├── contexts/
├── hooks/
├── layouts/
├── pages/
├── router/
└── App.js
- Firebase Authentication integration
- Protected routes
- Role-based access control
- Course listing
- Course details view
- Video content management
- Enrollment system
- Responsive design with Tailwind CSS
- Toast notifications
- Loading states
- Animations with AOS
- Image viewing with react-photo-view
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License.