Skip to content

Asad-Aziz-001/AI-Scholar-Hunt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

37 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Typing SVG



๐ŸŽ“ AI Scholar Hunt is a full-stack, LLM + RAG powered scholarship discovery and application assistance platform โ€” purpose-built for Pakistani students pursuing international education opportunities. It runs entirely without any paid or external API key, using a custom-built AI engine powered by Retrieval-Augmented Generation and advanced Prompt Engineering on a local scholarship knowledge base.


๐Ÿ“Œ Table of Contents


๐ŸŒŸ Project Overview

AI Scholar Hunt is a comprehensive web application that acts as an intelligent scholarship advisor for students. Instead of manually browsing dozens of websites, students can simply ask the AI chatbot questions like "What scholarships are available for MS in Germany?" or "Tell me about the DAAD scholarship deadline" โ€” and instantly receive structured, detailed responses pulled from a curated knowledge base of 51+ international scholarships.

The platform goes beyond just information retrieval. It also helps students:

  • Check their eligibility before applying
  • Analyze how strong their application is
  • Write and refine their essays and SOPs
  • Check if their CV is ATS-compliant
  • Generate a country-specific formatted CV ready for submission

All of this runs locally โ€” no OpenAI, no Anthropic, no Gemini API key required.


๐ŸŽฏ Problem Statement

Pakistani students face several challenges when applying for international scholarships:

  • Information Overload โ€” Hundreds of scholarships with different requirements, deadlines, and formats
  • No Personalized Guidance โ€” Generic websites don't check your specific eligibility
  • CV Format Confusion โ€” Different countries require radically different CV formats (e.g., Germany wants a photo, USA does not)
  • Weak Applications โ€” Students submit generic SOPs without tailoring them to scholarship criteria
  • Language Barrier โ€” Complex scholarship documents are hard to parse

AI Scholar Hunt solves all of these problems in one platform.


๐Ÿš€ Features

๐Ÿค– AI-Powered Scholarship Chatbot

  • Answers natural language queries about any scholarship in the database
  • Returns complete scholarship details: deadlines, eligibility, coverage, documents, apply links
  • Built using RAG (Retrieval-Augmented Generation) on a local .txt knowledge base
  • Scoring algorithm ranks results by relevance (name โ†’ country โ†’ institution โ†’ level โ†’ full-text)
  • Supports follow-up queries and related scholarship suggestions
  • Markdown-formatted responses rendered beautifully in the UI

โœ… Eligibility Checker

  • Students enter their CGPA, degree level, country of interest, and other details
  • Custom scoring algorithm checks eligibility against 8+ scholarships
  • Returns a match percentage and specific eligibility feedback per scholarship
  • Helps students prioritize which scholarships to apply for

๐Ÿ’ช Application Strength Analyzer

  • Students paste their SOP or CV text
  • AI evaluates the content against scholarship-specific criteria
  • Returns strengths, weaknesses, and actionable improvement suggestions
  • Uses Prompt Engineering to simulate expert scholarship reviewer feedback

๐Ÿ“ Essay & SOP Writing Assistant

  • AI-guided drafting tool for scholarship essays and Statements of Purpose
  • Helps structure arguments, highlight achievements, and tailor tone
  • Supports different essay styles (motivational, research-focused, career-oriented)

๐Ÿ“„ ATS CV Checker

  • Scans a resume/CV against a job or scholarship description
  • Returns ATS match score, matched keywords, and missing keywords
  • Gives specific suggestions to improve ATS compatibility
  • Essential for scholarships that use automated screening systems

๐ŸŒ Multi-Country CV Builder

  • Generates fully formatted CVs tailored to 14 countries across 4 template groups
  • Supports PDF and DOCX export
  • Photo embedding for countries that require it (Germany, UAE, China, etc.)
  • Country-specific fields: passport number (China/UAE), DOB/nationality (Germany), Europass format (Belgium/France)

๐Ÿ” Full Authentication System

  • User registration and login with Flask-Login
  • Secure password hashing
  • Password reset via email (token-based, 1-hour expiry)
  • Mobile + web responsive reset email template

๐Ÿ‘ค User Profile Management

  • View and edit personal profile
  • Theme and language preferences
  • Security settings (change password)
  • Profile completion progress tracker
  • Avatar upload support

๐Ÿ“ง Email Service

  • Flask-Mail primary with direct SMTP fallback (5 retries)
  • Supports Gmail SMTP on ports 465 (SSL) and 587 (TLS)
  • Beautiful HTML email templates โ€” mobile and web responsive

๐Ÿง  AI Engine โ€” How It Works

The AI engine is built entirely without any external LLM API. It combines three techniques:

1. Knowledge Base (RAG โ€” Retrieval)

scholarships/
โ”œโ”€โ”€ daad_scholarship.txt          โ† JSON-structured scholarship data
โ”œโ”€โ”€ fulbright_scholarship.txt
โ”œโ”€โ”€ australia_awards.txt
โ””โ”€โ”€ ... (51+ files)

Each .txt file contains structured JSON with fields like: scholarship_name, study_in, institution, level_of_study, deadline, coverage, eligibility, required_documents, apply_link

2. Scoring Algorithm (RAG โ€” Augmented Retrieval)

User Query: "DAAD deadline Germany masters"
      โ”‚
      โ–ผ
  Normalize & Tokenize
      โ”‚
      โ–ผ
  Score Each Scholarship:
  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
  โ”‚  Name exact match    โ†’ +100 pts  โ”‚
  โ”‚  Country match       โ†’  +50 pts  โ”‚
  โ”‚  Institution match   โ†’  +40 pts  โ”‚
  โ”‚  Study level match   โ†’  +30 pts  โ”‚
  โ”‚  Full text word hit  โ†’  +10 pts  โ”‚
  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
      โ”‚
      โ–ผ
  Sort by Score โ†’ Top Results
      โ”‚
      โ–ผ
  Format as Markdown Response

3. Prompt Engineering (Generation)

  • Response templates are carefully engineered to produce structured, readable output
  • Handles 3 response modes:
    • Exact match โ†’ Full scholarship details
    • General query โ†’ Top 3 matches with summaries
    • No match โ†’ Suggests related scholarships from database
  • Emoji-enhanced formatting for readability
  • Follow-up suggestion prompts embedded in every response

๐Ÿ—‚๏ธ Project Structure

AI-Scholar-Hunt/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ auth/                        # Authentication blueprint
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ””โ”€โ”€ routes.py                   # /login, /signup, /forgot-password, /reset-password
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ blueprints/                  # Feature blueprints
โ”‚   โ””โ”€โ”€ cv.py                       # Multi-country CV builder (14 countries, PDF+DOCX)
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ cv_templates/                # Country-specific CV generation logic
โ”‚   โ”œโ”€โ”€ usa.py                      # ATS-friendly (USA, Canada, Australia, Ireland)
โ”‚   โ”œโ”€โ”€ germany.py                  # Photo + Personal Details (Germany, Austria, Turkey)
โ”‚   โ”œโ”€โ”€ uae.py                      # Passport/Visa format (UAE, China, Japan)
โ”‚   โ””โ”€โ”€ china.py                    # CSC format
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ scholarships/                # ๐Ÿ“š RAG Knowledge Base
โ”‚   โ””โ”€โ”€ *.txt                       # 51+ scholarship files in JSON format
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ user_profile/                # Profile management blueprints
โ”‚   โ”œโ”€โ”€ routes.py                   # /profile, /edit-profile
โ”‚   โ”œโ”€โ”€ preferences.py              # Theme, language preferences
โ”‚   โ””โ”€โ”€ security.py                 # Password change
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ templates/                   # Jinja2 HTML templates
โ”‚   โ”œโ”€โ”€ index.html                  # Landing page
โ”‚   โ”œโ”€โ”€ dashboard.html              # User dashboard
โ”‚   โ”œโ”€โ”€ chat.html                   # AI Chatbot UI
โ”‚   โ”œโ”€โ”€ cv-builder.html             # CV Builder country selection
โ”‚   โ”œโ”€โ”€ cv_form.html                # CV form (per country)
โ”‚   โ”œโ”€โ”€ ats.html                    # ATS CV Checker
โ”‚   โ”œโ”€โ”€ essay.html                  # Essay Writing Assistant
โ”‚   โ”œโ”€โ”€ eligibility.html            # Eligibility Checker
โ”‚   โ”œโ”€โ”€ search.html                 # Scholarship Search
โ”‚   โ”œโ”€โ”€ scholarships.html           # Scholarship listing
โ”‚   โ”œโ”€โ”€ profile.html                # User profile view
โ”‚   โ”œโ”€โ”€ edit_profile.html           # Edit profile
โ”‚   โ”œโ”€โ”€ login.html                  # Login page
โ”‚   โ”œโ”€โ”€ signup.html                 # Signup page
โ”‚   โ”œโ”€โ”€ 404.html                    # Error pages
โ”‚   โ””โ”€โ”€ 500.html
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ static/                      # CSS, JS, images, fonts
โ”‚
โ”œโ”€โ”€ ๐Ÿš€ app.py                       # Main Flask application entry point
โ”œโ”€โ”€ ๐Ÿค– chatbot.py                   # RAG engine โ€” load, search, respond
โ”œโ”€โ”€ ๐Ÿ—„๏ธ models.py                    # SQLAlchemy User model
โ”œโ”€โ”€ โš™๏ธ config.py                    # App configuration (DB, Mail, Secret)
โ”œโ”€โ”€ ๐Ÿ“ง email_service.py             # Email sending with SMTP fallback
โ”œโ”€โ”€ ๐Ÿ“ฆ requirements.txt             # Python dependencies
โ””โ”€โ”€ ๐Ÿ“– README.md

โš™๏ธ Tech Stack

Layer Technology Purpose
Language Python 3.10+ Core backend language
Web Framework Flask 2.3 Routes, blueprints, request handling
ORM SQLAlchemy Database models and queries
Database SQLite Lightweight local database
Authentication Flask-Login + itsdangerous Session management + secure tokens
Email Flask-Mail + smtplib Password reset, notifications
PDF Generation ReportLab Country-specific CV PDF export
DOCX Generation python-docx CV Word document export
Image Processing Pillow (PIL) CV photo resizing and embedding
AI Engine Custom LLM + RAG Scholarship retrieval and response
Prompt Engineering Custom templates Structured AI response generation
Frontend HTML5, CSS3, JS, Jinja2 UI templates and interactions
CORS Flask-CORS Cross-origin request handling
Security itsdangerous Token-based password reset

๐Ÿ” Authentication System

User Flow:
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  /signup     โ†’  Register with name, email, password
  /login      โ†’  Authenticate โ†’ Flask-Login session
  /dashboard  โ†’  Protected route (login required)
  /logout     โ†’  Clear session โ†’ redirect to home

Password Reset Flow:
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  /forgot-password  โ†’  Enter email
       โ”‚
       โ–ผ
  Generate secure token (itsdangerous, 1hr expiry)
       โ”‚
       โ–ผ
  Send reset email (Flask-Mail โ†’ SMTP fallback)
       โ”‚
       โ–ผ
  /reset-password/<token>  โ†’  Set new password
       โ”‚
       โ–ผ
  Token verified โ†’ Password updated โ†’ Login

๐ŸŒ CV Builder โ€” Multi-Country Support

Group Countries Format Photo Special Fields
A USA ๐Ÿ‡บ๐Ÿ‡ธ Canada ๐Ÿ‡จ๐Ÿ‡ฆ Australia ๐Ÿ‡ฆ๐Ÿ‡บ Ireland ๐Ÿ‡ฎ๐Ÿ‡ช ATS-Friendly โŒ LinkedIn, GitHub
B Germany ๐Ÿ‡ฉ๐Ÿ‡ช Austria ๐Ÿ‡ฆ๐Ÿ‡น Turkey ๐Ÿ‡น๐Ÿ‡ท Lebenslauf โœ… DOB, Nationality, Marital Status
C China ๐Ÿ‡จ๐Ÿ‡ณ UAE ๐Ÿ‡ฆ๐Ÿ‡ช Japan ๐Ÿ‡ฏ๐Ÿ‡ต Passport/Visa โœ… Passport No, Visa Status
D Belgium ๐Ÿ‡ง๐Ÿ‡ช Denmark ๐Ÿ‡ฉ๐Ÿ‡ฐ Italy ๐Ÿ‡ฎ๐Ÿ‡น France ๐Ÿ‡ซ๐Ÿ‡ท Europass โŒ Languages (very important)

Sections generated: Personal Info โ†’ Education โ†’ Work Experience โ†’ Projects โ†’ Skills โ†’ Languages โ†’ Certifications โ†’ Publications

Export formats: .pdf (ReportLab) and .docx (python-docx)


๐Ÿ“Š Scholarship Knowledge Base

Total Scholarships : 51+
Countries Covered  : 20+
Formats            : JSON-structured .txt files
Fields per entry   : 15+ (name, country, institution, level,
                     deadline, coverage, eligibility, documents,
                     courses, duration, links, notes...)

Sample Scholarships:
  ๐Ÿ‡ฉ๐Ÿ‡ช  DAAD Scholarship 2026-2027
  ๐Ÿ‡บ๐Ÿ‡ธ  Fulbright Scholarship 2026-2027
  ๐Ÿ‡ฆ๐Ÿ‡บ  Australia Awards Scholarships 2026-2027
  ๐Ÿ‡จ๐Ÿ‡ณ  Beijing Government Scholarship 2026-2027
  ๐Ÿ‡จ๐Ÿ‡ฆ  Carleton University Entrance Awards
  ๐Ÿ‡ฐ๐Ÿ‡ท  Harvard Academy Scholars Program
  ๐Ÿ‡ฆ๐Ÿ‡ช  Khalifa University Scholarship (Fully Funded)
  ๐Ÿ‡ฎ๐Ÿ‡น  University of Bologna Scholarship
  ๐Ÿ‡ง๐Ÿ‡ช  Master Mind Scholarships Belgium
       ... and 42 more

๐Ÿ› ๏ธ Installation & Setup

1๏ธโƒฃ Clone the Repository

git clone https://github.com/yourusername/ai-scholar-hunt.git
cd ai-scholar-hunt

2๏ธโƒฃ Create Virtual Environment

python -m venv venv

# Windows
venv\Scripts\activate

# Mac / Linux
source venv/bin/activate

3๏ธโƒฃ Install Dependencies

pip install -r requirements.txt

4๏ธโƒฃ Configure the App

# Edit config.py with your settings (see next section)

5๏ธโƒฃ Run the Application

python app.py

6๏ธโƒฃ Open in Browser

http://127.0.0.1:5000

๐Ÿ“ Environment Configuration

Edit config.py with your values:

class Config:
    # Security
    SECRET_KEY = 'your-strong-secret-key-here'

    # Database
    SQLALCHEMY_DATABASE_URI = 'sqlite:///scholar.db'
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    # Email (Gmail SMTP)
    MAIL_SERVER   = 'smtp.gmail.com'
    MAIL_PORT     = 587
    MAIL_USE_TLS  = True
    MAIL_USERNAME = 'your-email@gmail.com'
    MAIL_PASSWORD = 'your-gmail-app-password'   # Gmail App Password
    MAIL_DEFAULT_SENDER = 'your-email@gmail.com'

    # Upload limit
    MAX_CONTENT_LENGTH = 16 * 1024 * 1024   # 16MB

๐Ÿ’ก For Gmail, generate an App Password from Google Account โ†’ Security โ†’ 2-Step Verification โ†’ App Passwords


๐Ÿงฉ Blueprint Architecture

app.py  (Main Flask App)
โ”‚
โ”œโ”€โ”€ auth_bp          โ†’  /login, /signup, /logout, /forgot-password
โ”œโ”€โ”€ profile_bp       โ†’  /profile, /edit-profile
โ”œโ”€โ”€ preferences_bp   โ†’  /preferences
โ”œโ”€โ”€ security_bp      โ†’  /security (change password)
โ””โ”€โ”€ cv_bp            โ†’  /cv-builder/, /cv-builder/cv_form/<country>
                         /cv-builder/generate_cv

Each blueprint is registered once in app.py after app = Flask(__name__) is created โ€” ensuring no duplicate route conflicts.


๐Ÿ“ฆ Requirements

Flask==2.3.0
Flask-Login
Flask-Mail
Flask-CORS
Flask-SQLAlchemy
itsdangerous
python-docx==0.8.11
reportlab==4.0.4
Pillow==10.0.0

๐Ÿ‘จโ€๐Ÿ’ป Authors

Authors

๐Ÿง‘โ€๐Ÿ’ป Asad Aziz

GitHub LinkedIn


๐Ÿง‘โ€๐Ÿ’ป Tayyab Zunair

GitHub LinkedIn

Email



๐ŸŽ“ Project Details

Field Detail
Project Type Final Year Project (FYP)
Year 2026
Domain Gen AI
Focus EdTech โ€” Scholarship Discovery for Pakistani Students
AI Techniques LLM ยท RAG ยท Prompt Engineering
External API โŒ None Required


"Empowering Pakistani students with AI-guided scholarship access โ€” one query at a time."




About

A Flask-based AI-powered scholarship discovery platform for Pakistani students. Features include an intelligent chatbot, eligibility checker, application strength analyzer, ATS CV checker, essay reviewer, and a multi-country CV builder. Built with Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors