A modern and user-friendly app for creating and sharing Learning Paths written in React/Typescript and Express/Nodejs.
What is a Learning Path?
A learning path is a structured guide that helps individuals achieve specific educational goals by organizing topics and resources in a logical sequence. It offers several benefits:
- Provides a clear roadmap for mastering a subject.
- Breaks down complex topics into manageable steps.
- Encourages consistent progress and self-paced learning.
- Facilitates skill development with tailored resources.
A modern and user-friendly app for creating and sharing learning content only based on outer resources, find some great things on the internet then create an amazing Learning Path from them which will guarantee the desired skill.
- Works on Browser
- Databse in the Cloud for Users
- Public Learning Path creation
- Private Learning Path creation
- Settings and Profile pages
- Dark Theme π
LearnfinityPlus is a free, open source software developed in my (little) spare time. If you liked the project and would like to support further development, please consider making a small donation, it really helps :)
People who helped the project along the way, thank you to all of you!
Standard adjusted Node.js + Express.js architecture based on different best practices with very good expressed Data Access Layer. For the database I have used MongoDB with Mongoose ODM.
Standard React + Redux with Typescript usage. Has been used a modified View-Container architecture with special hooks providing all the business logic to the Container giving an advantage of not writing prop types and interfaces for each component but extend from the ReturnType of the hook.
Frontend | Backend |
---|---|
Note: make sure you have .env
created from .env.example
with appropriate variables.
Note: Make sure you are using correct node
and yarn
versions.
- node:
20.10.0
- npm:
10.2.3
- yarn:
1.22.21
- Clone the repo
git clone https://github.com/AlbertArakelyan/learnfinity.git
in server
directory
- Install dependencies
yarn
- Start the server
yarn dev
The development server will start running at: http://localhost:8000
in client
directory
- Install dependencies
yarn
- Start the client
yarn start
The development client will start running at: http://localhost:3000