https://github.com/liaugust/gov4you
GOV4YOU — landing site for Ukraine's national programme connecting young talent with the public sector. Strict Next.js 16 + React 19 on the Diia state-minimalism design system.
https://github.com/liaugust/gov4you
accessibility design-system diia landing-page nextjs react tailwindcss typescript ukraine vercel
Last synced: 5 days ago
JSON representation
GOV4YOU — landing site for Ukraine's national programme connecting young talent with the public sector. Strict Next.js 16 + React 19 on the Diia state-minimalism design system.
- Host: GitHub
- URL: https://github.com/liaugust/gov4you
- Owner: liaugust
- Created: 2026-06-18T22:48:23.000Z (6 days ago)
- Default Branch: main
- Last Pushed: 2026-06-19T08:44:18.000Z (5 days ago)
- Last Synced: 2026-06-19T09:05:31.072Z (5 days ago)
- Topics: accessibility, design-system, diia, landing-page, nextjs, react, tailwindcss, typescript, ukraine, vercel
- Language: JavaScript
- Homepage: https://gov4you.vercel.app
- Size: 609 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

#### Держава починається з тебе
**GOV4YOU** is the landing site for a national programme that connects Ukraine's
young talent with the public sector — careers, mentorship, education and a
community of people who want to build the state from the inside.
[**🔗 Live demo — gov4you.vercel.app**](https://gov4you.vercel.app)
[](https://github.com/liaugust/gov4you/actions/workflows/deploy.yml)




---
## About
A single-page site built on the **Diia "state minimalism"** design system —
strict monochrome grayscale, the national **e-Ukraine** typeface, fully-rounded
pill controls, soft 16px surfaces, and flat depth via backdrop blur. Colour is
reserved exclusively for danger states.
The whole thing is engineered against an uncompromising quality bar: maximally
strict ESLint + TypeScript, an enforced one-entity-per-file structure, React
Compiler (no manual memoization), zero code duplication, and SEO / semantics /
accessibility treated as first-class requirements.
## Features
- 🎨 **Theming** — light / dark plus a high-contrast accessibility mode, applied
before first paint (no flash, no hydration flicker) and persisted.
- ♿ **Accessibility** — text-size stepper, focus-trapped menu/dialogs, skip
link, full ARIA landmarks, visible focus rings, and `prefers-reduced-motion`
honoured everywhere (scroll-reveal, count-ups, the menu animation).
- 🔎 **SEO** — `lang="uk"`, complete metadata (OpenGraph / Twitter / canonical),
per-theme `theme-color`, and JSON-LD (Organization · WebSite · Programme).
- ⚡ **Performance** — statically prerendered, `next/image` with a priority LCP
hero, and React Compiler optimization.
## Tech stack
| Concern | Choice |
| --- | --- |
| Framework | Next.js 16 (App Router, React Compiler) |
| UI | React 19 |
| Language | TypeScript 6 (super-strict) |
| Styling | Tailwind CSS v4 (CSS-first) + design tokens |
| Type | e-Ukraine (vendored via `next/font/local`) |
| Tooling | ESLint 9 · Knip · jscpd · commitlint · husky · lint-staged |
| Package manager | pnpm |
| Hosting | Vercel |
## Project structure
Strict, one level deep — every shared entity lives in its own kebab-case file
in a dedicated top-level directory, enforced by `eslint-plugin-project-structure`:
```
component//.tsx interface/.interface.ts util/.util.ts
provider//.tsx type/.type.ts const/.const.ts
hook//.ts context/.context.ts app/ public/
```
The full set of conventions (commit format, lint rules, the memoization ban,
etc.) lives in **[AGENTS.md](./AGENTS.md)**.
## Getting started
```bash
pnpm install
pnpm dev # http://localhost:3000
```
## Scripts
| Script | Purpose |
| --- | --- |
| `pnpm dev` | Development server |
| `pnpm build` | Production build |
| `pnpm lint` | ESLint (`--max-warnings 0`) |
| `pnpm typecheck` | `tsc --noEmit` |
| `pnpm knip` | Dead-code / unused-dependency check |
| `pnpm jscpd` | Copy-paste detection (zero tolerance) |
| `pnpm verify` | **The gate:** typecheck → lint → knip → jscpd → build |
## Deployment & CI
Hosted on **Vercel** via its native Git integration — every pull request gets an
automatic **preview deployment** (Vercel comments the URL) and **`main` deploys
to production**, with no secrets required. GitHub Actions
(`.github/workflows/deploy.yml`) runs the `pnpm verify` gate on every push and
pull request as a status check.
## Design & credits
- Design system reverse-engineered from the **Ministry of Digital Transformation
of Ukraine** ([thedigital.gov.ua](https://thedigital.gov.ua)) — the team behind **Diia**.
- **e-Ukraine** typeface — free for commercial and personal use
([brandbook.diia.gov.ua](https://brandbook.diia.gov.ua)).
---
© 2026 GOV4YOU