Skip to content
View Iam-whizzy's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report Iam-whizzy

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Iam-whizzy/README.md

πŸ‘‹ Hi, I'm Eric Kiplangat

I'm interested in building interesting tech projects β€” especially at the intersection of AI and real-world impact.

🌱 I'm currently working on a few projects. Some are private, but if you'd like a walkthrough, reach out β€” especially if you like to build things.


πŸ”¨ Featured Projects

Click a project to expand it.

Elimika

A self-paced learning platform for AI-assisted software development β€” video-based courses, quizzes, AI-graded assignments, and a gamified cohort leaderboard, built to keep a small remote cohort of engineers building daily instead of just watching.

What it does

  • Students work through a roadmap of courses built from curated video playlists, with per-video progress tracking, in-video comprehension questions, and a running "today's tasks" queue so there's always a clear next step
  • Every video feeds a quiz drawn from a per-video question bank, and every course ends in a real project assignment β€” submitted as a repo + deploy link, auto-graded by Claude against a course-specific rubric, and reviewable/overridable by a human instructor before the student ever sees the score
  • A gamification layer turns weekly consistency into motivation instead of pressure: daily streaks with tiered feedback (Poor β†’ Excellent), unlockable badges, and a cohort leaderboard scored as 40% assignments + 35% quiz accuracy + 25% streak
  • Instructors get their own dashboard: a submissions review queue, a weekly digest of who's stalled vs. acing it, one-click nudges to individual students, cohort-wide announcements, and authoring tools for building out new courses, videos, and quizzes
  • Onboarding and 1:1 consultation sessions book straight through an embedded Calendly link β€” no separate scheduling tool for students to juggle

How it's built

Layer Tech
Frontend Next.js 16 (App Router) + React 19 + Tailwind v4
Auth Supabase magic-link (signInWithOtp), no passwords
Database Supabase (Postgres + Row Level Security)
AI grading Claude (Sonnet) scores each submission against a course rubric; falls back to a deterministic mock grader when no API key is set, so the full flow works end-to-end in dev with zero external calls
Hosting Vercel

Why it's interesting

  • The AI grader is designed as a draft, not a verdict β€” every score and rubric comes back to a human instructor first, who can override it before the student ever sees it; the system is built around "AI proposes, human disposes" rather than full automation
  • Streaks, quiz accuracy, and leaderboard scores are all derived from one activity log rather than separate mutable counters β€” a single Postgres view computes everything straight from raw events, so there's one source of truth instead of several tables that can drift out of sync
  • The entire app runs convincingly on mock data the moment Supabase env vars aren't configured β€” dashboard, quizzes, leaderboard, and instructor tools are all fully clickable and demoable with zero backend setup
Counsel Colab

A platform being built to digitalize law firm operations in Kenya β€” consolidating matters, billing, documents, calendar, HR, and client communication into one system, and aggregating data across firms over time. Currently live at one firm, with 3 more in the pipeline.

What it does

  • Advocates manage matters end-to-end: open files, assign advocates, log case notes, track tasks and bring-up reminders, and link everything to a client
  • A billing module generates fee notes (litigation and commercial types), calculates totals with VAT, enforces a partner approval workflow, and renders a branded PDF on demand β€” including the firm's uploaded signature
  • An engagement module generates the three documents every Kenyan firm produces at matter open: a Letter of Engagement, a Deposit Request Note, and periodic Status Reports β€” all auto-numbered, PDF-ready, and linked to the matter record
  • A built-in Advocates Remuneration Order calculator pre-fills fee note line items from the matter value using the sliding-rate Scale 1 (non-contentious) and Scale 2 (contentious) fee schedules prescribed by Kenyan law
  • A client portal lets clients log in via magic link (no passwords), view their matters, download approved fee notes and documents, and track outstanding balances
  • Staff can request leave through an HR module; partner approval auto-creates blocked calendar events for each weekday of the leave period so everyone sees availability at a glance
  • A companion sync tool (Python + Playwright) logs into the Judiciary eFiling portal via a human-completed browser session, walks every court station and case linked to the firm, and pulls only the documents the firm itself filed β€” organized on disk by station and case, with a CSV audit trail and per-case checkpointing so a multi-hour run across thousands of cases can be stopped and resumed

How it's built

Layer Tech
Frontend Next.js 16 (App Router) + React + Tailwind CSS
Auth NextAuth.js β€” Microsoft Entra ID (staff) + Supabase magic-link (clients)
Database PostgreSQL via Prisma ORM
PDF generation pdf-lib β€” all documents rendered server-side from a letterhead template, never stored
File storage OneDrive (Microsoft Graph API) for client-visible documents
eFiling sync Python + Playwright (Chromium) β€” drives the portal's own paginated tables
Hosting Self-hosted Next.js deployment

Why it's interesting

  • Every document is generated on the fly from live database state, with custom word-wrap and auto-pagination across a letterhead template β€” no stored PDFs, nothing goes stale
  • The ARO fee calculator encodes the Kenyan statutory fee schedule as a pure function: pass in a matter value and a scale, get back pre-formatted line items ready to drop into a fee note
  • The two-portal architecture shares a single database but uses entirely separate auth stacks β€” Microsoft Entra SSO for staff, passwordless OTP for clients β€” with middleware routing each session to the right side
  • Calendar blocking on leave approval is fully automatic: one PATCH to approve a leave request iterates the date range, skips weekends, and bulk-creates blocked events β€” no manual calendar entry ever needed
  • The eFiling sync tool has a hard rule baked in from the start: credentials are never entered or stored by the tool β€” every run starts with a real login a human completes, and the session is reused from there
Virtual Assets Masterclass Quiz & Leaderboard

A quiz, leaderboard and gamified player-card platform built for a legal webinar series on virtual assets, run by Caroline Oduor & Associates Advocates, TechRift Africa and ARUDOLA.

What it does

  • Attendees sign in via magic link (Supabase OTP, no passwords) and take a catch-up quiz drawn from a growing question bank β€” now 84 questions, generated from session notes and reference materials
  • Each attempt serves 15 random questions; correct answers earn points that feed a real-time leaderboard β€” a Postgres changes subscription refetches rankings instantly, no polling or refresh needed
  • A FIFA-Ultimate-Team-inspired player card turns your rank into a shareable badge β€” Sovereign (#1), Titan (top 5), Vanguard (top 10), or Practitioner (everyone else) β€” with live stats, a tier emoji and the site's brand-gradient card art
  • Cards render two image variants on the server: a landscape preview (for WhatsApp/X/LinkedIn link unfurls) and a portrait Instagram-style download, both generated on-the-fly, never stored as static assets

How it's built

Layer Tech
Frontend Next.js 16 (App Router) + React 19 + Tailwind v4 + shadcn/base-ui
Auth Supabase magic-link (signInWithOtp), no passwords
Database Supabase (Postgres + Row Level Security + Realtime)
Card images next/og (Satori) β€” generates PNGs per request, no stored image assets
Hosting Vercel β€” auto-deploys on git push

Why it's interesting

  • The leaderboard updates live across every open tab the moment someone scores, via a direct subscription to database changes
  • Player cards are generated per request from live Supabase data (rank, points, quiz score), so the image is never stale β€” a server-only service-role client lets even unauthenticated social-media crawlers render a preview
  • Badge tiers, card colors and copy all live in one small config file β€” tune a rank cutoff or a color once and every card (the interactive version, the link preview, and the download) updates in sync
LSK Judges Survey

An advocate feedback portal for members of the Law Society of Kenya to rate judicial officers across all court levels.

What it does

  • LSK-verified advocates log in via magic link (no passwords) and submit structured performance feedback on judges and magistrates they have appeared before
  • Ratings cover courtesy, punctuality, quality of decisions, integrity, and fairness
  • A gamification layer rewards advocates with milestone badges (Bronze β†’ Silver β†’ Gold β†’ Platinum) as they rate more officers
  • Covers 1,999 judicial officers across 7 court types β€” Court of Appeal, High Court, ELC, ELRC, Magistrate Courts (213 stations), Kadhi's Courts, and Small Claims Courts

How it's built

Layer Tech
Frontend Single static HTML file β€” no build step, no framework
Auth Supabase magic-link (signInWithOtp) + one-time advocate profile
Database Supabase (Postgres + Row Level Security)
Hosting Vercel β€” auto-deploys on git push
Data 1,999 judicial officers scraped from the Judiciary Causelist Portal

Why it's interesting

  • The entire app β€” HTML, CSS, JS, and all 1,999 judge records β€” ships as one file
  • RLS enforces one submission per advocate per judge per year at the database level, no application logic needed
  • Subordinate court data (magistrates, kadhis, small claims officers) was scraped live from causelist.court.go.ke via its internal API

πŸ“« Get in touch

excelwithmartial@gmail.com β€” always happy to connect with people who like to build.

Pinned Loading

  1. diabetes_predictor diabetes_predictor Public

    Simple Diabetes Predictor Flutter App

    Python 1 1

  2. singlepay singlepay Public

    Singlepay app provides a fast and seamless way to make payments, send money, receive money, top-up airtime, and pay bills. It also provides a solution for online buyers and sellers to enable goods …

    Dart 3

  3. martial-team/Rafiki martial-team/Rafiki Public

    Rafiki is a mobile application designed to assist farmers in identifying plant diseases and providing recommendations for appropriate agrochemicals. The app aims to empower farmers with information…

    C++