Internal tool · dashboard.myanmargoal.com

MyanmarGoal Dashboard

The bilingual admin CMS that runs everything Myanmar Goal ships.

Role
Frontend Developer
Timeline
Apr 2025 – Aug 2025 · eTrade Myanmar
Platforms
Web

The operations hub behind Myanmar Goal — a single React admin where the team manages everything fans see in the apps: bilingual (EN/MM) news articles, football master data (leagues, teams, players and 36,000+ fixtures), the quiz question bank, match predictions, push notifications, popup promos and subscription packages across multiple payment options.

I built it as a TypeScript SPA on shadcn/ui (Radix + Tailwind) with a reusable data-table system — per-column search, filters, sorting, column visibility and pagination on every module — plus a bilingual rich-text article editor with banner upload, premium flags and scheduled publishing, and one-click sync of provider football data.

MyanmarGoal Dashboard cover

Inside the CMS

One SPA, eleven modules — content, quiz, promotions, notifications, predictions, football data, geography, payments, sync and users.

React admin SPA

Frontend · SPA

Auth-guarded React Router app (login with redirect-back) with a collapsible module sidebar, breadcrumb state carried in the URL, and a screen per entity — list, create and update flows throughout.

React React TypeScript TypeScript

Data-table system

Reusable tables

Every module shares one table foundation: per-column search inputs, dropdown filters, sorting, column show/hide, row selection, drag-free reordering actions and server-side pagination over tens of thousands of rows.

shadcn/ui Tailwind Tailwind

Content & commerce modules

CMS · billing

Bilingual article editor with rich text and media, quiz banks with difficulty and time limits, fixture predictions, push-notification composer with topics, and packages wired to MPT, KBZ Pay, Wave, Google Pay and Apple in-app purchase.

TypeScript TypeScript

Features

Bilingual article editor

Bilingual article editor

English/Myanmar tabs over one form — rich-text body with inline images, banner upload, channel select, premium toggle, scheduled publishing and tagging by league, team and player.

Editorial pipeline

Editorial pipeline

The daily Burmese news feed under management — thumbnails, publish times, premium availability and active states with per-column search and date filters.

Fixtures at scale

Fixtures at scale

36,000+ fixtures with league, kickoff, match state, both crests and venue — filterable by league, date and state, kept fresh by provider sync.

Bilingual team data

Bilingual team data

Team master data with crests, English and Burmese names, short codes and gender — the same names fans see in the app's Burmese UI.

League directory

League directory

Competitions with logos, short codes, manual ordering and active toggles that control what surfaces in the consumer apps.

Quiz question bank

Quiz question bank

7,000+ Burmese multiple-choice questions with difficulty levels and per-question time limits, feeding the monthly quiz game.

Match predictions

Match predictions

Editorial predictions pinned to real fixtures with full-time scores, insight copy, publish scheduling and active states.

Push notification composer

Push notification composer

Compose rich notifications with image, title and body, target topics, and send on demand — plus scheduled publish times.

Multi-payment packages

Multi-payment packages

Subscription and one-off packages across MPT, KBZ Pay, Wave, Google Pay and Apple IAP — bilingual names, MMK/USD pricing and per-provider developer codes.

Tech Stack

Framework

React React TypeScript TypeScript React Router React Router

UI & design system

Tailwind Tailwind shadcn/ui Radix UI lucide-react

Platform

Myanmar Goal API Auth-guarded routes

What I owned

  • Built the internal admin CMS for Myanmar Goal end to end in React + TypeScript — eleven modules covering content, quiz, predictions, notifications, promotions, football data, geography, payments, sync and users.
  • Designed a reusable shadcn/ui data-table system (per-column search, filters, sorting, column visibility, server-side pagination) shared by every module.
  • Implemented the bilingual EN/MM article editor with rich text, media upload, premium availability, channel selection and scheduled publishing.
  • Wired multi-payment package management across MPT, KBZ Pay, Wave, Google Pay and Apple in-app purchase with bilingual naming and MMK/USD pricing.
  • Integrated provider football-data sync with local curation — ordering, active flags and Burmese names for leagues, teams, players and 36,000+ fixtures.