Back to ADITYA's profile
12views

IdentiTea

ADITYA GAWALI
IdentiTea

Overview

๐Ÿš€ IdentiTea: Reviewer & Submission Notes

Welcome to IdentiTea! Thank you for reviewing our submission. This document contains essential notes to help you evaluate the platform, understand its core architecture, and test its features.

๐ŸŽฏ What is IdentiTea?

IdentiTea is an interactive, brutalist AI platform that ingests your scattered professional data (resumes, certificates, code repositories) and transforms them into a mathematically verifiable Professional Knowledge Graph.

We built this to solve the problem of "unverifiable claims" on resumes. Instead of trusting a piece of paper, IdentiTea cryptographically extracts skills and draws edges directly to the source documents that prove them.

๐ŸŒŸ Highlights for Reviewers

1. End-to-End AI Ingestion Pipeline (No Mock Data!)

We do not use fake data. If you create a new account, your graph is completely empty. Try uploading a PDF Resume or Certificate on the Documents page!

  • The backend parses the PDF using PyMuPDF.
  • It passes the raw text to Gemini 1.5 Flash for highly structured JSON entity extraction.
  • It securely saves the physical file to a Supabase Storage Bucket.
  • It creates relational rows in Supabase Postgres (for fast tabular querying).
  • It injects the skills and technologies as nodes into a Neo4j Knowledge Graph, linking them to the source document with confidence scores.

2. The Living Graph

Navigate to the Knowledge Graph tab to explore a fully interactive, force-directed graph of your professional identity. Watch nodes pulse and drag them around. This is powered by real Neo4j cypher queries hitting the backend.

3. Strict Brutalist Design Architecture

The UI/UX is built on a strict, 2-color rule:

  • Canvas (Background): #f8f9fa
  • Ink (Foreground): #0f0b0a
  • We rely on harsh geometric borders, solid 4px lines, and aggressive drop-shadows.
  • Dark Mode: Notice how the entire UI perfectly inverts. Even our SVG logo and the D3.js Knowledge Graph nodes dynamically invert their colors without introducing any tertiary shades.

๐Ÿ› ๏ธ Technology Stack

  • Frontend: Next.js 15, React 19, Tailwind CSS (Vanilla CSS for strict brutalism), Framer Motion, Firebase Auth.
  • Backend: Python FastAPI, Uvicorn, Google Generative AI (Gemini), PyMuPDF.
  • Databases:
    • Supabase (PostgreSQL): For relational entities, user settings, timelines, and blob storage.
    • Neo4j (AuraDB): For the highly connected, multi-hop Knowledge Graph relationships.

๐Ÿš€ How to Test (Live Demo)

We have deployed the application so you don't have to build it locally!

Testing Steps:

  1. Sign in via Google or GitHub (Firebase Auth).
  2. Go to Settings and set up your profile and GitHub URL.
  3. Go to the Documents tab and upload a PDF resume or a PDF certificate.
  4. Watch the AI extract the skills in real-time.
  5. Go to the Knowledge Graph to see your newly verified skills visually mapped out.
  6. Check the Certificates / Projects tabs to see the tabular breakdown of your extracted data.

Note: If Render has spun down due to inactivity, the first document upload might take an extra 30-40 seconds while the backend wakes up!

๐Ÿง‘โ€๐Ÿ’ป Running Locally

If you prefer to run the judges' evaluation locally:

  1. Clone the repository.
  2. In the frontend folder, add a .env.local with your Firebase config and NEXT_PUBLIC_API_URL=http://localhost:8000/api.
  3. In the backend folder, add a .env.development with your GEMINI_API_KEY, SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, and NEO4J_URI/USERNAME/PASSWORD.
  4. Start the frontend: npm run dev
  5. Start the backend: pip install -r requirements.txt followed by uvicorn main:app --reload
  6. Important: Execute supabase_schema.sql in your Supabase SQL editor to create the required tables.

Thank you for exploring IdentiTea! Escape the folders, enter the graph.