The Knowva is a web-based application designed to provide a personalized, interactive, and efficient learning experience. This tool helps users progress through their learning journey with different levels of assistance, ranging from basic explanations to advanced integrations with productivity tools.
The app adapts to the user’s learning needs by offering features such as practice problems, revision tools, resource integrations, and more. Whether you are a student, a self-learner, or a professional looking to enhance your skills, Knowva offers a tailored approach to learning.
You can explore the live demo of the project by clicking the link below:
- Visit Live Demo The website is hosted using the Defang platform.
-
Interactive Chat Interface: A user-friendly platform designed to facilitate real-time engagement, allowing users to ask questions and receive tailored responses.
-
Clear Explanations: Offering succinct, easily understandable explanations on a broad range of topics to ensure users can grasp essential concepts with clarity.
-
Practice Exercises: Providing a series of practice problems to assess comprehension and reinforce learning through hands-on application.
-
Revision Assistance: Tools and resources to support the revision of previously covered material, ensuring knowledge retention and mastery.
-
External Learning Integrations: Seamless access to a curated selection of online resources, including websites, articles, and videos, to enhance the learning experience.
-
Progress Tracker & Calendar: Monitor progress with personalized reminders for upcoming tasks, exams, and milestones, ensuring timely preparation and organization.
-
Comprehensive Learning Assistant: An all-encompassing, AI-powered assistant that offers tailored recommendations, adaptive learning paths, and ongoing motivational support to guide users toward their goals.
- Frontend: React.js
- Backend: Express.js, Node.js
- AI Integration: OpenAI
- Deployment: Defang
The core learning tools are powered by OpenAI API and LangChart:
- Explanation Model , Practice Model , Revision Model:
OpenAI’s GPT models generate clear, user-specific explanations for a variety of subjects. LangChart’s output model generates tailored practice exercises, designed to assess and reinforce user comprehension. The AI provides revision resources, including flashcards and quizzes, to help users consolidate their learning.
The search feature is powered by OpenAI API, enabling users to access curated online learning content. The AI intelligently searches and recommends highly relevant articles, tutorials, and videos based on the user's current learning context, enhancing their learning experience with supplementary resources.
An integrated calendar system is implemented to help users track their learning progress and set reminders for upcoming study tasks. The calendar supports:
- Task creation and editing
- Progress tracking
- Deadline and milestone management
This provides users with a structured and efficient way to manage their study schedules.
Before running this project locally, ensure you have the following installed:
-
Node.js Download Node.js
-
Git (for cloning the repository) Download Git
To enable AI features, you will need an OpenAI API key:
- Create an account at OpenAI
- Generate your API key from the OpenAI API Keys Dashboard
- Add your API key to the environment variables (see
.env.example)
To make an .env file
cp .env.example .envOnce you have the .env file set up, make sure to populate it with the required API keys and credentials.
Follow these steps to install the required dependencies for the project.
- Clone the repository:
git clone https://github.com/sanjjiiev/Knowva.git
Backend Setup:
- Navigate to the backend directory:
cd backend - Install dependencies:
npm install
- Ensure you have a .env file in the backend directory:
If not, create one or copy from an example:
cp .env.example .env
Frontend Setup:
- Navigate to the frontend directory:
cd ../frontend - Install dependencies:
npm install
- Install Axios:
npm install axios
Running the Project: Make sure both the backend and frontend servers are running:
Start Backend:
cd backend
npm startStart Frontend:
cd frontend
npm start


