Welcome to Eye On Roman ia — a compact, practical Next.js starter that looks and feels like a travel brochure while shipping real features for visitors, students, professionals and partners.
This README is written as a mini brochure + quick start guide: a short site preview, key features, how to run it locally, and where to look in the codebase.
Photo by Felipe Simo on Unsplash
Step-by-step checklists, official sources, and a printable PDF you can download per country.
Photo by Butuza Gabriel on Unsplash
Paths for students, professionals, and travellers — localized content with i18n and a clean UI.
- Clean Next.js 14+ app directory structure with TypeScript.
- i18n-ready content under
src/localesand route-aware pages insrc/app/[locale]. - Visa flow: country selector, tailored requirements, official sources listing, printable checklist (client PDF).
- Reusable UI components: Hero, Ribbon, Navigation Cards, Value Pillars, and Visa UI modules.
- Small, focused dataset in
src/app/[locale]/visa/datafor country info and official links. - Lightweight client state for visa selection (
useVisaDatahook).
src/app/[locale]/page.tsx— localized homepage layout andHero.src/app/[locale]/visa— all visa pages and components (Hero, VisaTypes, Checklist, OfficialSources).src/locales/en.json— English translations used bynext-intl.src/app/[locale]/visa/hooks/useVisaData.ts— hook that wires country selection to requirements.src/app/[locale]/visa/data— data modules:officialSource.ts,countryRequirements.ts,countries.ts.
Clone and install dependencies, then start the dev server:
git clone https://github.com/CodeNKoffee/eye-on-romania.git
cd eye-on-romania
npm install
npm run devOpen http://localhost:3000 and pick a locale (the app uses route-based locales at /en and /ro).
Build for production:
npm run build
npm run startNotes:
- The project was scaffolded with
create-next-appand expects a modern Node.js (18+) runtime. - Optional dev dependencies used by the project:
framer-motion,jspdf,zustand(verifypackage.jsonfor exact versions).
- Add or edit translations in
src/locales/*.jsonand restart dev server if you change message keys. - Add new visa countries in
src/app/[locale]/visa/data/countries.tsand map requirements incountryRequirements.ts. - UI components live under
src/app/[locale]/componentsandsrc/app/[locale]/visa/components.
- The Visa pages include a small list of official sources in
officialSource.ts. Keep those links authoritative. - The markup aims for semantic headings, ARIA labels on selectors, and sensible keyboard focus for the forms.
- Fork the repo, create a feature branch, and open a PR describing the change.
- Keep UI components isolated and add small tests for any data transformation.
This starter is provided as-is. Add your preferred license file if you intend to publish or redistribute.
If you want, I can also:
- Add a ready-to-use screenshot or live demo deployment section.
- Generate small SVG thumbnails for the README instead of external photos.
- Produce a shareable
deployscript tuned for Vercel or Netlify.
Enjoy exploring the codebase — open src/app/[locale]/visa to see the visa flow live.
