Booking systems and web apps that hold up in real use.

I’m Daniel, a React and TypeScript developer in Brașov, Romania. I build the whole thing: the booking flow, the payments, the admin screen and the tests that keep them honest. I work in English, German and Romanian.

Work

Client work first. Status as of September 2026.

  1. Brasov Private Tours

    Client project

    Booking and card payments for a Brașov company that runs private day trips and airport transfers.

    Built with: Next.js 16, React 19, Postgres, Prisma 7

    Status: Pre-launch

  2. This site

    Own project

    A portfolio with a structured inquiry form and a private inbox that updates live.

    Built with: React 19, React Router 8, Firebase Auth, Cloud Firestore

    Status: Live

  3. Rope Street Tattoo

    Contest entry

    From first message to paid booking for a one-chair tattoo studio. Entry for the Contra × Lovable challenge.

    Built with: React, Postgres with row-level security, Stripe (test mode), Lovable

    Status: Live demo

  4. Airport-transfer booking in English, Romanian and German, with a fixed price in seconds.

    Built with: Next.js 16, React 19, TypeScript, Tailwind CSS 4

    Status: Concept

  5. Ursa

    Concept

    Booking site for a mountain refuge, with a generated trail map and a live night sky.

    Built with: HTML, CSS, JavaScript, Canvas 2D

    Status: Concept

  6. Accessibility study

    Research and tooling

    44 online shops in Romania and Germany tested against WCAG 2.1 AA. 37 of the 42 that loaded failed.

    Built with: axe-core 4.13, Playwright, Node 24, GitHub Actions

    Status: Published

Two guests, one car, the same evening.

Brasov Private Tours takes bookings and card payments online. The hard part was making sure a car is never sold twice, even when two people pay within the same second, and that a late payment is refunded on its own.

Role
Design, build, deploy
When
September 2026
Tests
79 unit, 24 integration, 16 end-to-end
Languages
English, Romanian, Italian, Spanish
Read the case study
Home page of Brasov Private Tours: a trip finder over a photo of Făgăraș fortress.
brasov-private-tours.vercel.app, September 2026

What I can build for you

Each one links to work where I did it.

Booking websites

Online booking with a calendar, card payments and an admin screen. For tours, transfers, studios and guesthouses.

Seen in Brasov Private Tours, Serpentina Transfers, Rope Street Tattoo

Web apps on React and Firebase

Inquiry forms, dashboards and member areas with sign-in and data that updates live.

Seen in This site

Accessibility checks and fixes

I test your site against WCAG 2.1 AA with tools and by hand, then fix the barriers in the code.

Seen in Accessibility study

Sites in three languages

English, German and Romanian. German and Romanian are my native languages, so your customers read real sentences.

Seen in Serpentina Transfers, Rope Street Tattoo, This site

How a project runs

  1. You describe the job

    Through the inquiry form or by e-mail. A short call is usually enough to understand it.

  2. You get a written plan

    What I will build, how long it takes and what it costs, before any work starts.

  3. You see it working early

    A preview link you can open on your phone, not screenshots. Your feedback goes into the next version.

  4. Launch and handover

    Tested on phones and with a keyboard, hosted on accounts in your name, with notes on how to run it.

For hiring teams

I’m looking for a role building React and Firebase apps. The quickest way to judge my work is the code behind this site: the security rules, their tests and the CI that runs them.

I work with AI coding tools, Claude Code among them, and I own what ships: the plan, the review and the tests.

Front end
React 19, TypeScript, React Router, Next.js App Router
Back end
Firebase Auth, Firestore and security rules, Postgres with Prisma, Stripe
Testing
Vitest, Playwright, the Firebase emulator, GitHub Actions
Quality
WCAG 2.1 AA, axe, Lighthouse, Core Web Vitals
Languages
English (fluent), German and Romanian (native)
Daniel Butnar

About

I live in Brașov. German and Romanian are my native languages, and I work in English every day. I study at Politehnica Bucharest, in the German-language stream.

I care about the parts people don’t see: what happens when two customers book at once, when a payment arrives late, when someone uses a screen reader. I also founded GoActive Bucharest, a youth group that runs Erasmus+ exchanges, and built its website.

Tell me what you need.

A project, a job opening or a question. I read every message myself.

Send an inquiry