DEV Community

Shivam Gupta
Shivam Gupta

Posted on

SaathiAI: An Open-Source AI Learning Companion I Built for a Friend

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend.

πŸŽ“ SaathiAI β€” Your Personal AI Learning Companion

What I Built

I built SaathiAI, an AI-powered learning companion designed to make exam preparation simpler, faster, and more focused.

The idea came from a problem I have seen among my friends and classmates: before an exam, students often have large PDF notes and study materials but very limited time to revise them effectively.

Finding a particular concept, simplifying a difficult topic, preparing university-style answers, creating practice questions, and revising important material can consume a significant amount of time.

I wanted to build something that could help with this problem.

With SaathiAI, students can turn their study material into an interactive learning experience instead of simply reading the same PDF repeatedly.

SaathiAI is designed around several study-focused features:

  • πŸ“„ Study Material Processing β€” Work with PDF notes and study material.
  • πŸ’¬ AI Study Assistant β€” Ask questions based on the provided material.
  • πŸ“ Exam-Oriented Answers β€” Generate structured answers for exam preparation.
  • 🎯 MCQ Quizzes β€” Practice concepts through automatically generated questions.
  • 🧠 Flashcards β€” Use active recall to revise important concepts.
  • ⚑ Quick Revision β€” Convert study material into concise revision content.
  • 🚨 Exam Tomorrow Mode β€” Create a focused emergency revision guide when preparation time is limited.

The goal was not simply to build another chatbot. I wanted SaathiAI to behave more like a study companion that understands how students actually prepare for exams.

πŸš€ Live Application:

[Add your deployed application link here, if available]

The demo shows how study material can be processed and then used across SaathiAI's learning and revision features.


Code

The complete source code for SaathiAI is available on GitHub:

https://github.com/5hivam123/Sathi-Ai

The repository contains the application code, AI/RAG components, tests, configuration examples, documentation, and setup dependencies required to explore the project.


How I Built It

SaathiAI is built around a Retrieval-Augmented Generation (RAG) approach.

Instead of treating the language model as a source of all knowledge, the application is designed to retrieve relevant information from the student's study material and provide that context to the AI.

At a high level, the workflow looks like this:

Study Material / PDF
        ↓
   Text Extraction
        ↓
     Chunking
        ↓
    Embeddings
        ↓
 Vector Retrieval
        ↓
Relevant Study Context
        ↓
 Open AI Model
        ↓
Student-Friendly Response
Enter fullscreen mode Exit fullscreen mode

This architecture makes the student's own study material an important part of the response-generation process.

The project is written primarily in Python and organized into separate components for the user interface, document processing, retrieval, AI functionality, study features, configuration, and testing.

I also focused on building features around actual study workflows rather than limiting the project to question answering.

For example, the same study material can be transformed into exam-oriented answers, quizzes, flashcards, and revision material.

🚨 Exam Tomorrow Mode

One of my favorite features is Exam Tomorrow Mode.

Almost every student knows the situation:

β€œMy exam is tomorrow, I have a lot left to study, and I don't know where to start.”

This mode is designed to turn the available study material into a more focused revision experience, helping the student move from reading to active preparation.

It represents the main idea behind SaathiAI: AI should not only provide information β€” it should help organize that information around the user's actual problem.


Why Does Open Innovation Matter?

Open innovation is important to SaathiAI because I wanted the intelligence layer of the project to remain flexible and adaptable.

An open AI ecosystem gives developers the ability to understand and modify how their applications work instead of permanently tying the product to one closed provider.

For an educational application, this creates several interesting possibilities.

An open-weight model can potentially be self-hosted, optimized, replaced with another compatible model, or adapted for more specialized educational tasks.

It also creates a path toward local AI.

In the future, applications such as SaathiAI could process more of a student's learning workflow directly on their own hardware, which can provide greater control over how personal study material is handled.

Open innovation also makes experimentation easier.

Developers can explore different embedding models, retrieval techniques, language models, prompting strategies, and inference approaches without redesigning the entire application around a single proprietary ecosystem.

For me, that is one of the most exciting things about open AI:

We are not limited to consuming intelligence as a service. We can understand it, experiment with it, build around it, and adapt it to solve problems for the people around us.


My Agent Session

I used AI-assisted development during the project to help explore the architecture, improve implementation ideas, debug components, and iterate on the overall product experience.

[Add your DevRelay agent session here if available.]


Prize Categories

SaathiAI is being submitted to the partner categories that correspond to the technologies actually used in the final implementation.

[Add the applicable category/categories here β€” for example, Best Use of Gemma only if Gemma is actually used in the submitted project.]


What I Learned

Building SaathiAI helped me understand that creating a useful AI application involves much more than connecting a user interface to a language model.

I learned more about:

  • Retrieval-Augmented Generation
  • Document processing
  • Embeddings and semantic retrieval
  • Designing AI prompts around specific user workflows
  • Building structured AI features
  • Error handling and testing
  • Creating a user experience around AI rather than simply displaying AI responses

Most importantly, this challenge encouraged me to start with a person and a problem instead of starting with technology.

The question was not:

β€œWhat AI project can I build?”

It was:

β€œWhat can I build that would genuinely help someone I know?”

That question became SaathiAI.


What's Next?

SaathiAI is only the beginning.

Some improvements I would like to explore next include:

  • 🌐 Multilingual explanations
  • πŸŽ™οΈ Voice-based learning
  • πŸ“Š Study progress tracking
  • πŸ“š Multiple subject knowledge bases
  • πŸ”’ More local/offline processing
  • πŸ“– Improved source citations
  • 🧠 Personalized revision plans
  • πŸ€– Further experimentation with open-weight models

My long-term goal is to make SaathiAI a lightweight, accessible, and genuinely useful open-source learning companion.


Built with ❀️ and open innovation for Hacktoberfest 2026.

opensource #ai #hacktoberfest #education

Top comments (0)