fd72e1082a6d2f65dd39573c7e185034354c6a84
- Brute-force scramble that decodes hero values left to right - Full-screen hero on desktop with telemetry pinned to the bottom - Terrain no longer drifts; home skips the page transition - selimaj.dev is the root brand; Orus becomes one brand with its own projects, and independent projects branch from the root Co-Authored-By: Claude Opus 5.5 <[email protected]>
selimaj.dev
Portfolio site. Next.js (App Router, static export) and Tailwind CSS v4.
npm install
npm run dev # http://localhost:3000
npm run build # static site in out/
npm run lint
npm run build writes plain HTML/CSS/JS to out/, which any static host can serve.
Where things live
src/content/: all copy and data, including every placeholder (markedPLACEHOLDER).profile.ts: name, title, stance, dossier fields, links, map lock.dossier.ts: the five About files.projects.ts: projects, statuses, node-map positions, featured nodes.
public/profile/pfp.svg: placeholder profile picture. Replace this file (or pointprofile.pfpat a new one).public/terrain.svg: hero terrain contours (Dajt elevation data).src/app/globals.css: colour tokens, bracket/grid utilities, and all motion.
Rules worth keeping
- Green (
accent) means active or detected: hover, focus, current page, live telemetry, the lock. Nothing at rest is green. - The map shows Tirana city centre only. Never add anything finer than city scale.
- All motion sits behind
prefers-reduced-motion: no-preference. Text renders without JS.
Languages
TypeScript
90.4%
CSS
8.9%
JavaScript
0.7%