Emmanuel Doji

Portfolio · 2026

000%

Jos, Nigeria · Builder · Operator · EducatorShipping with Pagrin · Tita Group · Firm Foundation & Dominion Academy

I'mEmmanuel Doji.

Currently

Frontend engineer at Pagrin, shipping interfaces for Tita Group, maintainer of open-source SDKs, and proprietor of a school in Jos, Plateau State. I build at the seam of software, business, and education — and I write code with Claude Code in the loop every single day.

Scroll
PagrinTita GroupFirm Foundation & Dominion AcademyFoniolabsRabitSkoolBoxStimTitaCenterOpen SourceAI-NativeJos, Plateau StateClaude CodePagrinTita GroupFirm Foundation & Dominion AcademyFoniolabsRabitSkoolBoxStimTitaCenterOpen SourceAI-NativeJos, Plateau StateClaude Code
01

About

Three vectors,one operator.

Emmanuel Doji
Emmanuel DojiJos, Nigeria

I build things that have to work — in production, and in the real world that leans on them. Code that ships to users. Businesses that have to make payroll. A school that opens its doors every morning. I live at the seam where engineering meets ownership, because that's where software stops being a demo and starts changing how people earn, build, and learn.

01 · Engineering

I ship product, not slides.

Five years of building production software across web, Web3, and AI-native tooling. Frontend engineer at Pagrin, where I design and ship the interfaces — partners dashboard, embeddable web SDK, shared AI chat and analytics packages — across a multi-app Turborepo. Maintainer of Rabit, a MIT-licensed embedded wallet SDK with non-custodial key recovery.

02 · Operating

I've been on both sides of the table.

Inside Tita Group I've built TitaCenter (fintech: on-ramp, off-ramp, exchange, invoicing, wallet) and Stim (real-money Web3 PvP gaming on Base). I know what it takes to spec, ship, and operate a product, not just write the code. That perspective shapes every interface I design and every architectural decision I make.

03 · Education

I'm building schools my country needs.

Firm Foundation & Dominion Academy is one institution in Jos, Plateau State — nursery and primary, with a secondary section we just opened. My parents founded it; I recently took on its proprietorship, bringing the same systems thinking I use in software to running it. In my own time I'm building SkoolBox, an offline-first AI tutor in Tauri + Rust, so children with intermittent internet can still learn with AI in the room.

5+
Years shipping production software
3
Organizations I help run
12
Open-source packages I maintain
1
School under my proprietorship
02

Selected work

WhatI ship.

01

Pagrin

Frontend engineer · Pagrin

Partners dashboard + embeddable web SDK on a multi-app Turborepo with shared AI chat, analytics, and i18n packages.

  • Next.js 16
  • Turborepo
  • React 19
  • next-intl
  • @pagrin/ai-chat
  • PostHog

Two product surfaces ship from one source of truth. Designed and shipped the partners dashboard UI, the embeddable web SDK, and the shared design system that powers both.

2025 — Present
02

TitaCenter

Lead frontend engineer · Tita Group

Fintech super-app: on-ramp, off-ramp, exchange, trade, invoicing, payment-gateway, and wallet — one product, one team.

  • Next.js 16
  • React 19
  • TanStack Query
  • Framer Motion
  • Recharts

Shipped seven financial product surfaces inside a single coherent interface. Built the design system, animation language, and data-fetching patterns the rest of the engineering team now extends.

2024 — 2025
03

Stim

Full-stack engineer · Tita Group

Real-money Web3 PvP gaming PWA. Tic-tac-toe in USDC on Base, with a minimax AI fallback when no opponent is online.

  • React
  • Vite
  • viem
  • wagmi
  • RainbowKit
  • Socket.IO
  • Express

Wallet-connected PvP, real-money escrow, minimax + alpha-beta AI for solo play, full-stack i18n, PWA installability. Shipped admin panel separately on Next.js + wagmi.

2024 — 2025
04

Rabit

Creator · Maintainer · Open source

Open-source embedded wallet SDK. 11-package Turborepo, EVM + Solana, 2-of-3 Shamir Secret Sharing for non-custodial recovery.

  • TypeScript
  • Turborepo
  • Changesets
  • viem
  • @solana/web3.js

MIT-licensed SDK with a `create-rabit-app` scaffolder, full CONTRIBUTING / SECURITY / CoC, and key recovery that doesn't require a custodian. The wallet layer that should have existed.

05

SkoolBox

Product engineer · Foniolabs · school pilot

Offline-first AI tutor for Nigerian classrooms with intermittent internet. Tauri 2 + Rust + local LLM. Built under Foniolabs, designed for the school I run.

  • Tauri 2
  • Rust
  • React 18
  • SQLite
  • KaTeX
  • mammoth

A ~12MB desktop app that gives teachers AI-assisted lesson planning and students an AI tutor — without depending on the internet. Pilot deploys into the school I run.

2025 — Present
06

Foniolabs

Founder · solo build · Personal lab

My personal lab for tech in education and web3. Migrated its site to Sanity + Next.js with Claude Code MCP wired into the editor flow.

  • Next.js 16
  • Sanity
  • GROQ
  • Vercel
  • Claude Code MCP
  • HubSpot

I publish content by prompting Claude Code. Lighthouse 95+ across the board, zero SEO ranking drop after DNS cutover.

03

Stack

Tools Ireach for.

Frontend

01
  • React 19
  • Next.js 16
  • TypeScript
  • Tailwind v4
  • Framer Motion
  • TanStack Query
  • Vite
  • next-intl

Architecture

02
  • Turborepo
  • pnpm workspaces
  • Changesets
  • Monorepo
  • Design systems
  • ECharts

Backend & data

03
  • Node.js
  • Express
  • PostgreSQL
  • SQLite
  • Redis
  • Sanity
  • GROQ

Web3

04
  • viem
  • wagmi
  • RainbowKit
  • ethers.js
  • @solana/web3.js
  • Hardhat
  • Foundry
  • Solidity

Desktop & systems

05
  • Tauri 2
  • Rust
  • sqlx
  • reqwest
  • WASM
  • Local LLM

AI · DevOps · Ops

06
  • Claude Code
  • Sanity MCP
  • Vercel AI SDK
  • PostHog
  • OpenTelemetry
  • Vercel
  • GitHub Actions
04

Leadership & Education

What I'mbuilding offline.

Code is one half of my work. The other half is operating Firm Foundation & Dominion Academy — the school my parents founded in Jos, Plateau State — with the same rigor I bring to a codebase: clear systems, observable outcomes, and tools that let small teams move like large ones.

Proprietor · since 2026

Jos, Plateau State

Nursery & Primary

The established core of Firm Foundation & Dominion Academy, founded by my parents. I recently took on its proprietorship — bringing systems thinking to admissions, reporting, parent communication, and modern classroom infrastructure.

  • Foundational literacy and numeracy
  • Structured parent reporting
  • Modern classroom infrastructure

Proprietor · since 2026

Jos, Plateau State

Secondary

The newest section of the school, launched this year. Standing it up means owning the academic calendar, faculty operations, and piloting SkoolBox as the in-classroom AI tutor.

  • Curriculum coverage tracking
  • Teacher workload reduction via AI
  • Offline-first classroom tooling

Operating principles

01

Run it, then write it.

I don't design for users I haven't observed. Every system I ship gets used by people I can name — students, partners, marketing operators, traders.

02

Software is a multiplier, not a magic trick.

AI-native tooling lets a small team operate like a large one. Claude Code is in my flow every day; on Foniolabs, my personal lab, Sanity MCP runs the publishing pipeline so I ship content by prompting. The leverage is real.

03

Ship to where people actually are.

SkoolBox is offline-first because the school that needs it most doesn't have reliable broadband. TitaCenter speaks Naira-first because that's where its users live. Constraint becomes feature.

05

In the field

On stage,in the room.

Emmanuel teaching a web3 cohort to a room of students
Teaching the room
Emmanuel on a conference panel discussion
On the panel — why products fail
Emmanuel at a whiteboard explaining code
At the whiteboard
Emmanuel at a Web3 builders gathering
With the builder community
06

Timeline

Where I'vebeen.

  1. 2026 — Present

    Firm Foundation & Dominion Academy

    Proprietor · Jos, Plateau State

    Took on the proprietorship of the school my parents founded — nursery, primary, and a newly opened secondary section. Running academic operations, faculty oversight, and piloting SkoolBox, an offline-first AI tutor I build in my own time, as in-classroom infrastructure. Treating school operations like a product: clear systems, observable outcomes.

    • Operations
    • Curriculum
    • Edu-tech rollout
    • Stakeholder ops
  2. 2025 — Present

    Pagrin

    Frontend Engineer · Remote

    Lead the frontend across a multi-app Turborepo: partners dashboard, embeddable web SDK, and the shared @pagrin/ai-chat, /analytics, /i18n, /ui packages. Designed and shipped the dashboard interface, the embeddable SDK surface, and the i18n + analytics pipeline that powers both apps.

    • Next.js 16
    • Turborepo
    • next-intl
    • PostHog
    • React 19
    • ECharts
  3. 2024 — Present

    Tita Group

    Senior Frontend Engineer · Remote

    Lead frontend across Tita Group's product portfolio. Shipped TitaCenter (fintech super-app — on/off-ramp, exchange, invoicing, payment gateway, wallet) and Stim (real-money Web3 PvP gaming on Base, plus a separate Next.js + wagmi admin panel). Built the animation language, design tokens, and data-fetching patterns the engineering team extends.

    • Next.js 16
    • React 19
    • TanStack Query
    • Framer Motion
    • viem
    • wagmi
  4. 2025 — Present

    Foniolabs

    Founder — Personal Lab · Personal project

    Foniolabs is my personal lab — where I experiment with tech for education and web3 in my own time. Most recently I migrated foniolabs.xyz to Sanity + Next.js + Vercel: 9 document types, 8 reusable section blocks, custom Studio components (slug-with-auto-redirect, SEO preview, OG preview, presentation tool), and Claude Code + Sanity MCP wired in so I publish content by prompting. Lighthouse 95+ across the board.

    • Next.js 16
    • Sanity
    • GROQ
    • Claude Code MCP
    • HubSpot
    • Vercel
  5. 2020 — Present

    Independent / Open Source

    Full-Stack & Web3 Engineer · Jos, Nigeria

    Built and maintain Rabit, a MIT-licensed embedded wallet SDK with non-custodial Shamir-based key recovery — 11 packages, EVM + Solana, `create-rabit-app` scaffolder. Earlier: shipped wallets, on/off-ramps, PvP dApps, and fintech tools for clients across Africa and Europe.

    • TypeScript
    • Solidity
    • viem
    • @solana/web3.js
    • Tauri
    • Rust

08 · Get in touch

Have somethingbuilt right.

I'm always open to conversations — partnerships, advisory, speaking, collaborations across software, fintech, and education. The fastest way is email; the deepest is a phone call.

Emmanuel Doji

Based in

Jos, Nigeria

WAT · UTC+1

Phone

+234 903 262 1846

I respond to

Real work

Partnerships · advisory · interesting problems

Response time

< 24h