Moderní firemní intranet pro zaměstnance ALPS ALPINE (ALCZ). Obsahuje nástěnku s aktualitami a firemním kalendářem, adresář zaměstnanců s vyhledáváním, týdenní jídelníček kantýny a rozcestník firemních systémů a aplikací.
Živé demo: https://vanerek.github.io/Intranet/ (statická verze bez API – ukázková data jsou zabalená v buildu, nasazuje se automaticky přes GitHub Actions z .github/workflows/deploy-pages.yml)
- Frontend: React 19 + TypeScript, Vite, Tailwind CSS 4, lucide-react, motion
- Backend: Express + better-sqlite3 (SQLite databáze se automaticky vytvoří a naplní ukázkovými daty při prvním spuštění)
Požadavky: Node.js 20+
- Instalace závislostí:
npm install - Spuštění API serveru (port 3001):
npm run dev:api - V druhém terminálu spuštění frontendu (port 3000, požadavky na
/apiproxuje na API server):npm run dev - Otevřete http://localhost:3000
npm run build # sestaví frontend do dist/
npm start # spustí Express server, který servíruje API i frontend z dist/
| Cesta | Popis |
|---|---|
server/index.ts |
Express API server (aktuality, události, zaměstnanci, odkazy, jídelníček) |
server/db.ts |
Schéma SQLite databáze a ukázková data |
src/App.tsx |
Aplikační shell – navigace, tmavý režim, hash routing |
src/pages/ |
Jednotlivé stránky (nástěnka, aktuality, adresář, jídelníček, systémy) |
src/components/ui.tsx |
Sdílené UI komponenty |
src/lib/api.ts |
Typy API a hook pro načítání dat |
Databáze se ukládá do server/data/intranet.db (v gitu ignorováno). Pro nové naplnění ukázkovými daty stačí soubor smazat a restartovat server.
Build s proměnnou VITE_STATIC_DATA=true nepotřebuje API server – data ze src/lib/staticData.ts se zabalí přímo do frontendu a filtrování probíhá v prohlížeči. Používá se pro GitHub Pages:
VITE_STATIC_DATA=true npm run build
npm run lint