Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
a9102c6
ActivitiesChartCard-grid
karthikkha612 Sep 21, 2025
a77de39
Delete app directory
SanjaiPG Sep 21, 2025
e3ee87d
Merge pull request #1 from sanjjiiev/new
SanjaiPG Sep 21, 2025
19e4f33
Create README.md
SanjaiPG Sep 22, 2025
08ba6d4
Update README.md: Hosting info added
SanjaiPG Sep 22, 2025
7520c22
Asset: a .png file added for demo
SanjaiPG Sep 22, 2025
76354ba
Update README.md: sample.png (demo) picture added
SanjaiPG Sep 22, 2025
70a187f
Update README.md
SanjaiPG Sep 22, 2025
c8db56e
Pic added: picture added for level 1
SanjaiPG Sep 22, 2025
33f2908
Pic added: picture added for level 2
SanjaiPG Sep 22, 2025
6c4633a
Pic added: picture added for level 3
SanjaiPG Sep 22, 2025
ba4acaf
Update README.md: Pictures added for every level
SanjaiPG Sep 22, 2025
5666c81
Delete images/L1.png
SanjaiPG Sep 22, 2025
24921b6
New picture added: L1
SanjaiPG Sep 22, 2025
17e8ce7
Update README.md: Level 1, 2, 3 changed
SanjaiPG Sep 22, 2025
095d973
Update README.md: service name change
SanjaiPG Sep 22, 2025
bd6d4c1
Update README.md: Implementation added
SanjaiPG Sep 22, 2025
6e7d697
Update README.md: Prerequisites
SanjaiPG Sep 22, 2025
b98d1cd
env: env example file added
SanjaiPG Sep 22, 2025
eb0e0b3
Update README.md: changes for env example
SanjaiPG Sep 22, 2025
3240205
Delete assets/images directory
SanjaiPG Sep 22, 2025
68be36b
Update README.md
SanjaiPG Sep 22, 2025
afaf483
Update README.md
sanjjiiev Sep 22, 2025
44f3c5f
Update README.md
sanjjiiev Sep 22, 2025
889a101
Update README.md
sanjjiiev Sep 22, 2025
e3e07a8
Create LICENSE
sanjjiiev Sep 22, 2025
659710d
Update README.md: Table of contents
SanjaiPG Sep 22, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2025 Sanjjiiev S

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
158 changes: 158 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
# Knowva

## Overview

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.

## Live Demo

You can explore the live demo of the project by clicking the link below:

- [Visit Live Demo](https://tj2noyhdmenib-frontend--80.prod1b.defang.dev/)
The website is hosted using the **Defang** platform.

![Project Screenshot](images/sample.png)


## Table of Contents

- [Features](#features)
- [Level 1](#level-1)
- [Level 2](#level-2)
- [Level 3](#level-3)
- [Technologies](#technologies)
- [Implementation Overview](#implementation-overview)
- [Prerequisites](#prerequisites)
- [Steps to Run Locally](#steps-to-run-locally)

## Features

### Level 1 - Core Learning Tools
- **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.

![Level One Screenshot](images/L1.png)

### Level 2 - Resource Integration
- **External Learning Integrations**: Seamless access to a curated selection of online resources, including websites, articles, and videos, to enhance the learning experience.

![Level Two Screenshot](images/L2.png)

### Level 3 - Advanced Learning Features
- **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.

![Level Three Screenshot](images/L3.png)

## Technologies

- **Frontend**: React.js
- **Backend**: Express.js, Node.js
- **AI Integration**: OpenAI
- **Deployment**: Defang

## Implementation Overview

### 1. Core Learning Tools (Explanation, Practice, Revision)

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.


### 2. Search Model for External Learning Resources

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.


### 3. Task Management & Calendar Integration

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.

## Prerequisites

Before running this project locally, ensure you have the following installed:

### System Requirements

- **Node.js**
[Download Node.js](https://nodejs.org/)

- **Git** (for cloning the repository) [Download Git](https://git-scm.com/)

### API Key Requirement

To enable AI features, you will need an **OpenAI API key**:

1. Create an account at [OpenAI](https://platform.openai.com/signup)
2. Generate your API key from the [OpenAI API Keys Dashboard](https://platform.openai.com/account/api-keys)
3. Add your API key to the environment variables (see `.env.example`)

### Environment Variables
To make an .env file
```bash
cp .env.example .env
```
Once you have the .env file set up, make sure to populate it with the required API keys and credentials.


## Steps to Run Locally
Follow these steps to install the required dependencies for the project.

1. **Clone the repository**:
```bash
git clone https://github.com/sanjjiiev/Knowva.git
```
**Backend Setup**:
1. Navigate to the backend directory:
```bash
cd backend
```
2. Install dependencies:
```bash
npm install
```
3. Ensure you have a .env file in the backend directory:
If not, create one or copy from an example:
```bash
cp .env.example .env
```
**Frontend Setup**:
1. Navigate to the frontend directory:
```bash
cd ../frontend
```
2. Install dependencies:
```bash
npm install
```
3. Install Axios:
```bash
npm install axios
```
**Running the Project**:
Make sure both the backend and frontend servers are running:

**Start Backend**:
```bash
cd backend
npm start
```
**Start Frontend**:
```bash
cd frontend
npm start
```
4 changes: 4 additions & 0 deletions backend/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# .env.example

# Replace with your actual OpenAI API Key in the .env file
OPENAI_API_KEY=your-openai-api-key-here
Binary file added images/L1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/L2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/L3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/sample.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.