"Soft Academy" is an online platform designed for students and learners interested in studying software engineering. The goal is to make it easy and accessible for future learners to choose their software learning path, create a pleasant and non-intrusive learning experience, and ignite a passion for programming. Description of the project.
Visit the live site: Soft Academy
Admin - email: [email protected] password:123456
- React/Vite: A JavaScript library for building user interfaces.
- Material-UI: A popular React UI framework implementing Google's Material Design.
- react-redux: The official, opinionated, batteries-included toolset for efficient Redux development.
- Fire-base: Providing a real-time database service.
- React Router DOM: Declarative routing for React.js.
- Soft Academy
- Technologies Used
- Features
- Installation and Running the Application
- Project Structure
- Testing Project
- License
- Demo
"Soft Academy" offers a diverse range of courses covering various aspects of software engineering. This allows users to choose courses that align with their interests and goals.
The platform facilitates future learners in selecting suitable courses by providing detailed descriptions and preview options.
Each learner has their user profile, where they can track their activity, progress, and completed courses.
The platform's design is user-oriented, combining easy navigation with a modern and pleasant interface.
Courses include interactive materials, tasks, and projects that enrich learning and support the practical application of acquired knowledge.
"Soft Academy" provides a dedicated forum for discussions. Learners can engage with peers, instructors, and industry professionals, fostering a collaborative learning environment. The forum allows users to ask questions, share insights, and participate in relevant discussions.
Stay up-to-date with the latest in the tech world through the "Soft Academy" News Blog. Our blog covers a wide range of topics, including industry trends, programming languages, new technologies, and more.
We believe that staying informed is a crucial part of the learning journey, and our News Blog is here to provide valuable insights to the tech enthusiasts within the "Soft Academy" community.
Soft Academy understands the importance of quick and easy communication for its users. That's why we offer a dedicated chat feature directly on the platform.
-
Real-time Communication: Engage in real-time conversations with other learners, instructors, and support staff.
-
Instant Support: Get quick assistance and support by reaching out to our chat support for any queries or issues.
-
Community Interaction: Connect with fellow learners, discuss course-related topics, and share your experiences.
-
Notification System: Stay informed about new messages and updates through our notification system.
Access the chat feature conveniently from the "Soft Academy" platform. Enjoy seamless communication and enhance your learning experience through instant interactions with the community and support team.
At Soft Academy, we believe that effective communication is key to a successful learning journey, and our chat feature is designed to facilitate just that.
Every new user receives an email with a username, password, and a discount code upon registration. This process ensures a seamless onboarding experience and provides immediate access to the platform's resources.
User profile pictures are securely stored as files in Firebase. This integration allows for easy upload and retrieval, ensuring that user profiles are always up-to-date and visually engaging.
-
Clone the repository.
git clone https://github.com/bebo13133/SoftAcademy.git
-
Install Dependencies: Open a new terminal window/tab in the root directory of your project. and run:
npm install
-
Navigate to Project Directory:
cd soft-academy
-
Run client part
npm install
npm run dev
-
Run servers:
*Soft Academy has two main servers, and to make it as easy as possible to start them, we have taken care of it. Simply execute the following command in the main directory:
npm install
npm start
npm start
The project follows a structured organization to enhance maintainability and ease of navigation. Here's a brief overview ofromf the main directories and their purposes:
-
/soft-academy: Contains the frontend application built with React.
-
/public: Static assets and HTML template.
-
/src: React components, styles, and application logic.
-
-
/server: SoftUni practice Server. Contains the frontend application built with React.
-
/server/src: Houses the backend application built with Node.js and Express.
-
/common: Utility functions and helper modules.
-
/plugins: Configuration files for the server.
-
/service: Controllers handling the business logic.
-
/test: Testing files.
-
-
/inside-server: Socket.io server. For Chat service.
Feel free to explore each directory for more detailed information on their contents. This structure is designed to enhance code organization, making it easier for developers to locate and work on specific aspects of the application.
Soft Academy has its own tests to ensure a more reliable and secure platform operation. To run them, execute the following command from the main directory :
npm run test
This project is licensed under the MIT License.
Explore a brief demo of the Soft Academy platform in the following video:
Click on the image to view the demo.