Skip to content

Repository files navigation

RampUp — Microsoft SWE Intern OA & Interview Prep

A personal, single-user dashboard for grinding toward the Microsoft intern Online Assessment and interviews: a structured DSA roadmap, a problem tracker, timed mock OAs, spaced-repetition review, analytics, Rust/Java pattern cheatsheets, and STAR behavioral prep — with XP, levels, and streaks to keep the reps going.

Live: https://imajij.github.io/rampup/

Everything is stored locally in your browser (localStorage). No accounts, no server, no database.

Run it

npm install
npm run dev      # http://localhost:5173

Other scripts:

npm run build      # production build → dist/
npm run preview    # serve the production build
npm run typecheck  # tsc --noEmit
node --experimental-strip-types src/logic.test.ts   # logic self-checks

How data & backups work

  • All state lives in localStorage behind a single typed module, src/storage.ts (get/set/list + per-entity repositories). Components never touch localStorage directly — they go through the reactive store in src/store.tsx.
  • On first run the app seeds the roadmap, canonical problem metadata (titles, difficulties, source links, pattern tags — no copyrighted statements), pattern templates, and behavioral stubs (see src/seed.ts).
  • Settings → Backup & restore exports a JSON snapshot you can re-import on another machine. Reset wipes everything and re-seeds.
  • Upgrade path: because all persistence is isolated in storage.ts, the layer can be swapped for a SQLite/Prisma backend later without touching any UI code.

How to add problems

  • From the Roadmap: check off a canonical problem to log a solve (rate confidence + time → XP, mastery, and a spaced-repetition entry update instantly), or "Log another for this topic" to add your own with the topic's tags pre-filled.
  • From Problems: "Log problem" for a fully custom entry (title, link, patterns, difficulty, status, your solution code, notes). Filter/sort/search there too.
  • Solving anything weighted by difficulty (Easy 10 / Medium 25 / Hard 50 XP) and seeds the Review queue via a lightweight SM-2 schedule keyed off your confidence rating.

Stack

Vite · React · TypeScript · Tailwind CSS v4 · Recharts · lucide-react. Hash-based routing, zero backend.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages