I built Pathway AI, a SaaS platform for international students planning their study abroad journey, in roughly one month. Here's how I went from concept to live product using Next.js, Supabase, and TypeScript.
International students face overwhelming challenges when planning to study abroad: fragmented information, biased agents, unclear visa requirements, and no clear way to compare destinations. I wanted to build something that solved this.
Used Supabase Auth with Google and GitHub OAuth. This approach prevents spam and ensures data quality:
// lib/supabase.ts
import { createClient } from '@supabase/supabase-js';
export const supabase = createClient(
process.env.NEXT_PUBLIC_SUPABASE_URL!,
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY!
);
Built around student profiles and their journey:
profiles β stores all student data (destination, budget, course, goals)
visa_checklists β tracks document completion
sops β stores Statement of Purpose drafts
resumes β resume builder data
countries / cities / courses β reference data for exploration
Row-Level Security (RLS) ensures students only see their own data.
Students fill their profile β system generates a Statement of Purpose draft using structured templates.
// lib/sop-generator.ts
export function generateSOP(profile: Profile): string {
return `
Dear Admissions Committee,
I am applying to ${profile.course_name} at ${profile.preferred_university}
in ${profile.target_destination} because...
`;
}
Similar approach β profile data β formatted resume sections β PDF export.
Core system provides personalized guidance using rule-based logic tailored to student profile + target destination.
Production: Always uses reliable rule-based engine β fast, cost-free, predictable responses.
Self-hosted / Development: Optional Gemini API integration available. If you run this locally and add a Gemini API key, the Advisor can enrich responses with real AI personalization. This is gated behind a NODE_ENV=development
flag β production deployments never call AI APIs.
Students track required documents for their target country. Sections stored as JSON, items marked complete as they prepare.
Browse destinations side-by-side, compare costs, safety scores, job prospects, PR pathways.
Why Supabase over Firebase?
Why Vercel?
Why TypeScript everywhere?
Vercel: Automatic deployments on git push. Environment variables stored securely.
Sentry: Catches errors in production. Configured at build time.
Upstash Redis: Rate limits API calls (contact form, future exports).
Challenge 1: Handling complex JSONB data
Storing skills, experiences, languages as JSON meant flexible schema but harder migrations. Solved by keeping schema versions in mind from day one.
Challenge 2: Ensuring data consistency
With RLS policies, had to test extensively to prevent data leaks. Built a checklist: test as authenticated user, test as different user, test with no auth.
Check it out: pathway-ai-olive.vercel.app
GitHub: github.com/krishna-builds-dev/pathway-ai
Have you built a SaaS from scratch? Drop your stack and lessons in the comments below!
I'm a full-stack developer focused on Next.js + Supabase. Open for freelance work. Follow on GitHub or LinkedIn