-
-
Notifications
You must be signed in to change notification settings - Fork 0
Architecture
achedon12 edited this page Sep 11, 2026
·
2 revisions
- Next.js 16 (App Router), React 19: content pages generated at build time (static).
-
Tailwind CSS v4: token-based theme (
@theme), bevelled corners borrowed from the game. - TypeScript end to end.
-
Docker: self-contained production image (
output: standalone).
The site's content depends on no external URL at runtime. Every piece of data and every image is copied into the repository:
- factual data lives in
src/data/jeu/(JSON); - visuals live in
public/visuels/.
The only scripts allowed are the ones that fetch this data (see Data and sync); they run outside the site, locally or in CI, and their output is committed. The one exception is the signed-in account area: profile, rank and friends are read live from Moonton, through the community API.
src/
app/ Pages (App Router): heroes, tier list, items, modes, patch notes, tools…
components/ UI components
i18n/ Languages, message catalogues, translation helpers
lib/ Data access (donnees.ts), types, utilities
data/
jeu/ Extracted data (heroes, visuals, statistics, patches…)
heros/ Hand-written analyses (builds, counters, commentary)
content/ Articles in Markdown, one folder per language
scripts/ Data fetching and translation (see the dedicated page)
public/visuels/ Images copied locally
-
Factual (heroes, skins, items, patches, lore): extracted automatically
into
src/data/jeu/. Never edited by hand: the next sync would overwrite it. -
Editorial (analysis, builds, annotated counters): written by hand in
src/data/heros/, layered on top of the factual data through the hero'sslug.
Independent fan project · Mobile Legends: Bang Bang™ Shanghai Moonton Technology Co., Ltd.