
SZMetal Admin Panel
Custom admin dashboard for a metal manufacturer: product catalog, client management, RLS roles, and live Realtime updates.
Withheld: this is SZMetal's operations data.
- Next.js 16
- React 19
- TypeScript
- Supabase
- +2 more
Next.js, NestJS, Go and PostgreSQL. Three of these systems are in daily use: a metal manufacturer, a real estate agency, an e-commerce operation.
Istanbul · UTC+3 · open to full-time roles and contract work
async connectToRedis(): Promise<void> { const url = process.env.REDIS_URL; const opts: RedisOptions = { maxRetriesPerRequest: null }; this.pubClient = url ? new Redis(url, opts) : new Redis({ host: process.env.REDIS_HOST ?? 'localhost', port: Number(process.env.REDIS_PORT ?? 6379), ...opts, }); this.subClient = this.pubClient.duplicate(); // ioredis auto-connects lazily, but ping early so a // misconfigured URL surfaces at boot instead of silently // breaking cross-replica delivery. await Promise.all([ this.pubClient.ping(), this.subClient.ping() ]);}Three claims. You can check all three without leaving this page.
Check it: press Tab, right now.
Put the mouse down and press Tab. Every focus ring is visible, the skip link works, and nothing traps you. Contrast holds in both themes.
Check it: open the Network tab and reload.
No animation library, no carousel, no hero video, no font CDN. One third-party script (Vercel Analytics) and nothing else. Fonts are self-hosted through next/font with a single file preloaded. Turn JavaScript off and the words on this page are still here; they are rendered on the server.
Check it: github.com/MuratZrl (opens in a new tab)
TypeScript strict in every TypeScript project, and no ts-ignore anywhere in the public repos. Three of the six projects below are public. Read the source instead of taking my word for it. The client work is private, and the project cards say exactly what is being held back and why.
Three built for paying clients, three built for me. The client ones are in daily use.

Custom admin dashboard for a metal manufacturer: product catalog, client management, RLS roles, and live Realtime updates.
Withheld: this is SZMetal's operations data.

Real estate platform with Google Maps property search, a full admin panel, and a Google Search Console analytics integration.
The public site is live. The admin panel behind it isn't.

Ticimax e-commerce sync engine + admin dashboard: realtime supplier scraping and live sync progress monitoring.
Withheld: supplier data for an e-commerce client.
What I reach for. The detail is on the project pages.
Full-time roles and contract work both. If you have a process running on a spreadsheet that four people are editing at once, that is the thing I build.
The current process, not the feature list.
What gets built, what doesn't, how long.
Deployed and documented.