Atölye Tasarım
Website and 3D workshop configurator
A configurator that builds a school workshop in 3D in the browser, with React Three Fiber and drei; the furniture is generated in code, without ready-made model files.
See the productAll of them are live; store pages and details are on the Products page.
Website and 3D workshop configurator
A configurator that builds a school workshop in 3D in the browser, with React Three Fiber and drei; the furniture is generated in code, without ready-made model files.
See the productThree.js is a JavaScript library that draws 3D scenes on a web page using the browser’s WebGL support. There is no app to download: anyone who opens the link sees the scene on a phone or a computer. It is most useful in configurators, where customers adjust a product to their own needs and see the result straight away.
In the configurator we built for okultasarım.com, a school builds its workshop in four steps: it enters the room’s measurements and shape, picks the number of students and the school level, chooses the colours, then sends the design to the firm over WhatsApp. There are separate configurators for woodwork, ceramics and art, and cooking workshops. Notable decisions in the code:
We use both. For scenes with many parts that talk to the interface all the time, we choose React Three Fiber: every piece of furniture in the scene is a React component, and every change in the panel goes straight into the scene. For a single visual effect, plain Three.js with a shader of our own means less code and a smaller bundle. The pointer-following particle field on this site’s home page is written that way; it stops drawing when it is out of view or the tab is in the background.
| React Three Fiber | Plain Three.js | |
|---|---|---|
| How the scene is written | As React components | Objects are created one by one in code |
| Link to the interface | Panel and scene share the same state | Wired up by hand |
| Good fit for | Configurators, interactive scenes with many parts | Single effects, light backgrounds |
| Our example | Atölye Tasarım | The particle field on the pepechura.com home page |
To build a Three.js scene from React components. The whole Atölye Tasarım scene is written with it.
Ready-made camera controls, environment lighting, contact shadows, 3D text and performance monitoring. Switching between the perspective view and the top-down plan uses drei’s CameraControls.
Soft shading in corners and joints (N8AO) and cinematic tone mapping. Off on phones, and switched off automatically on a computer if the frame rate drops.
Spring animations for modules settling into place and for measurement changes (@react-spring/three).
The design state shared between the configurator’s panel and its scene.
Scene components are tested with @react-three/test-renderer without opening a browser; the layout and price calculations are tested separately with Vitest.
We talk about which measurements and options change your product, what the customer does once the design is finished and the budget you have in mind.
We write down the options, the layout rules, the image quality targeted on phones and computers, and the acceptance criteria.
Every week you try a working version of the scene on your phone and computer; your comments on measurements and looks steer the next week.
A senior QA tests the configurator on different phones and browsers before release; the fallback screen for devices that cannot open 3D is checked at this stage too.
We fix the bugs that surface in this period free of charge; after that you can continue with monthly maintenance.
Timelines and budget ranges are published on our web application development and pricing pages; everything on this page follows the same figures.
We take several measures for that. In Atölye Tasarım the scene is redrawn only when something changes; on phones the resolution is capped and shadow effects are off from the start; on a computer, effects switch off by themselves if the frame rate drops. In browsers without WebGL, the home page shows a photo instead of the scene, and the configurator offers to continue over WhatsApp.
The scene is drawn in the browser and search engines don’t read it; what they need to read is the information the scene conveys. On Atölye Tasarım, the page text, headings and share images are prepared on the server with Next.js, and the 3D scene loads after the page opens.
Atölye Tasarım has no ready-made model files at all; the furniture is generated in code from the measurements, which is why it fits any size. If you have 3D models of your products, we look at their format and size together in the scoping call and decide which route suits.
Yes. In Atölye Tasarım an estimated price range comes out of the selected modules, with a clear note that it isn’t binding. When the design is sent, the price is recalculated on the server; the figure coming from the browser isn’t trusted.
A perpetual licence to use the software, and its documentation. Having the source code transferred to you is possible for an extra fee, written separately in the quote.
In a free 30-minute scoping call we work out your product’s options and how to show it in the browser, together.