About Farrukh Inomov
inomov.online is Farrukh Inomov's hiring portfolio for recruiters, presenting a profile, experience, projects, blog, and ways to get in touch. It provides German and English pages and is built as static HTML with Astro.
Key features
- 01Present profile and experience
- 02Show projects and blog
- 03Offer contact and intro-call options
- 04Provide German and English pages
Use cases
- 01Review a candidate's experience
- 02Browse a candidate's projects and blog
- 03Send a message through the contact page
- 04Switch between German and English
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://inomov.online/api/mcpclaude mcp add --transport http online-inomov-portfolio https://inomov.online/api/mcp{"mcpServers":{"online-inomov-portfolio":{"type":"http","url":"https://inomov.online/api/mcp"}}}Open in Cursor{"servers":{"online-inomov-portfolio":{"type":"http","url":"https://inomov.online/api/mcp"}}}Open in VS Code{"mcpServers":{"online-inomov-portfolio":{"type":"http","url":"https://inomov.online/api/mcp"}}}{"mcpServers":{"online-inomov-portfolio":{"serverUrl":"https://inomov.online/api/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMEinomov.online
Farrukh Inomov's hiring portfolio, in German (default, /) and English (/en).
Built with Astro as static HTML and deployed on Vercel.
Develop
Requires Node 24 (see .nvmrc) and pnpm.
pnpm install
pnpm dev # http://localhost:4321
pnpm verify # lint, format check, tests, type check and build
The pages build without secrets. The API routes for the Contact page need the server variables
listed in .env.example; in production they are set in Vercel only.
End-to-end tests
Playwright runs against the production build (pnpm build first), in Chromium, Firefox and WebKit:
every page from the sitemap, axe checks for WCAG 2.2 AA in both themes, and the terminal, menu,
theme toggle, language switch and scroll motion.
pnpm exec playwright install # once, downloads the browsers
pnpm test:e2e # all browsers
pnpm test:visual # screenshots, in Docker (see below)
pnpm test:visual --update-snapshots # after an intended visual change
Screenshots render differently on each operating system, so the visual tests only run on Linux,
in the official Playwright image: in CI and locally through pnpm test:visual, which needs Docker.
Review the changed images in e2e/__screenshots__/ before committing them.
Performance budgets
Lighthouse CI audits the home, a project and the About page on simulated mobile, three runs each
(median). A pull request fails when a category scores below 95, Largest Contentful Paint exceeds
2 s or a page loads more than 60 KB of compressed JavaScript. Budgets live in lighthouserc.cjs.
pnpm build && pnpm test:lighthouse # reports in .lighthouseci/
Where things live
| Path | What |
|---|---|
src/data/ | Single source of truth: profile, Experience, Skills, Projects. Validated with Zod at build time. |
src/i18n/ | Locales, translated routes and UI strings. |
src/views/ | One component per page, shared by both locales. src/pages/ only maps URLs to views. |
src/components/ | Components grouped by surface (site, home, about, projects, ui). |
src/styles/ | Design tokens and global styles. |
e2e/ | Playwright end-to-end, accessibility and visual tests. |
GLOSSARY.md | The domain language. Use these terms in code and copy. |
docs/adr/ | Architecture decisions. |
Deploy
Vercel builds every push. Pull requests get preview deployments; master goes to https://inomov.online.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.