jstanbul / Engineering handbook

How we work.

Our way of making decisions, technical choices and responsibilities visible from the first conversation to life after launch.

Covers of the jstanbul engineering handbook
Colourful opening spread and engineering introduction in the handbook
01 / Opening the handbook
Typographic opening spread of the handbook
02 / Studio identity
Our approach

A good digital experience does not end at a beautiful screen. The right problem, a clear interface and a dependable system are parts of the same decision.

01 / 06

Understand the need

We start with the right question.

We discuss your business, your audience and what a visitor came to do. We review the existing site, content and technical dependencies. Success is more than appearance: discoverability, comprehension, conversion and maintainability belong in the brief. We do not call a promise we cannot measure a success criterion.

What you get
Goals, user journeys, current state and open questions.
02 / 06

Reduce uncertainty

We make the scope visible together.

Pages, content, integrations, deliverables, revisions and timing are explicit in the proposal. We do not assume an unreviewed data source or API will work. First-year maintenance, domain, hosting and model usage costs are kept distinct. If a new request changes cost or timing, we discuss its impact before doing the extra work.

What you get
Agreed deliverables, price, dependencies and change boundaries.
03 / 06

Build the system

We design with real content in mind.

Information architecture, hierarchy, typography, colour, states and screen sizes are designed together. Form errors, longer copy and missing images are design problems too. Motion should explain a decision or give feedback; content never waits for an animation to finish. One shared decision list keeps feedback, design and development aligned.

What you get
Approved direction, core components, interaction and content decisions.
04 / 06

Make it a product

The design lives in the code.

We build reusable interface components with semantic HTML and accessible interactions from the start. Where content management is needed, we define who updates which data and how. Server operations validate input and communicate failure clearly. For AI or 3D work, we verify data, device and integration constraints before choosing the technology.

What you get
Working pages, manageable content and documented integrations.
05 / 06

Check the work

Looking right is only one test.

We review desktop and phone layouts, keyboard use, focus order, forms and failure states. We check reduced-motion preferences, image loading, both languages and links. This site's development gate includes TypeScript, ESLint, translation checks, automated tests and a build; project-specific browser scenarios cover critical journeys as well.

What you get
Fixed issues, passing checks and known limits.
06 / 06

Hand it over

Launch is a beginning.

Before launch we review the domain, environment variables, deployment access, analytics consent and a recovery path. We verify content and forms in production. We explain who owns each account and piece of content, what maintenance covers and how new features are handled. Third-party subscriptions are shown separately from the project fee.

What you get
The live product, access and usage information, maintenance responsibilities.

From the printed handbook / Technology and process

Angled view of the handbook's technology and process spread
Top view of the handbook's technology and process spread

Tools and reasons

Technology serves the intent.

We do not apply one fixed stack to every client. The tools below are used on this site or scoped for a suitable project; each choice starts with the need, the data and the target devices.

01

Interface and page delivery

React components keep repeated decisions consistent; Next.js supports page delivery, routes and metadata. Semantic HTML, responsive images and bilingual content make the experience clearer for people and search engines.

React · Next.js · TypeScript · next-intl

02

Motion and feedback

CSS handles short state changes. GSAP coordinates more involved sequences. The content and actions remain available when motion is turned off.

CSS · GSAP · reduced motion

03

Content and data

Content management, forms and persistent records follow the actual workflow. Server routes on this site validate input; Supabase stores some persistent data. A CMS or another service is selected only after the data and permissions are clear.

Server routes · validation · Supabase

04

Spatial experience

We turn a real place into a browser scene using Gaussian splatting. Capture planning, scene cleanup, device performance and information points are part of the experience. Essential information and actions remain available if the scene cannot load.

Gaussian splatting · capture · fallback view

05

AI within the product

Assistants, search and recommendations should connect intent to real data. We limit data access and tool permissions and design for poor answers and unavailable services. The interior example on this site shows prepared concepts; it does not generate live model output.

Ready data · bounded access · clear failure state

06

Release and measurement

Build, testing, release and observation form one delivery chain. This site uses Vercel for deployment and performance signals; analytics depends on user consent. For another project, infrastructure follows access, cost and maintenance needs.

Vercel · tests · consent-based analytics

Quality gates

What delivery means.

01

Accessibility

Meaningful structure, readable contrast, keyboard access, visible focus and a motion alternative are baseline checks.

02

Performance

We review image size, loading order and unnecessary client code. Real device behaviour informs the decision.

03

Verification

Types, lint, translations, tests and build are checked. Critical user journeys are tried in a browser.

04

Handover

Access, dependencies, content updates and deployment responsibilities should be clear at delivery.

Transparency

We separate knowns from unknowns.

Timing, integrations and maintenance vary by project. Before discovery, we do not promise a specific performance outcome, an unverified API connection or unlimited revisions. We write down decisions and additional costs before work starts.

Talk about your project