Onepage - Tagline Element Editor
Tutti i progetti

Onepage · 2025

Onepage - Tagline Element Editor

Rilasciato
Onepage - Tagline Element Editor logo
ReactTypeScriptMobXViteCSS Modulesdnd-kitnanoid

Panoramica

Onepage is a no-code website and landing page builder used by 14,000+ customers. The test task required building an interactive editor for the Tagline element, following a Figma design and implementing all unspecified states through independent UI judgment. The result is a split-view editor: a canvas preview renders tag chips in a flex-wrap layout with live style updates, while a floating panel (absolutely positioned next to the element) provides three sub-panels - a tag list with drag-and-drop reordering, a create/edit item form, and a full styles panel (4 variants, 5 sizes, 5 border-radius options, 3 alignment modes). Every mutation simulates a POST to a mock API endpoint. Architecture was designed for extensibility: adding new element types, controls, or style parameters requires no structural changes.

La Sfida

The task explicitly evaluated scalable architecture - the code had to be structured so that new element types, panel controls, and style parameters could be added without refactoring. UI decisions for states not covered in the Figma (hover, empty states, edge cases) were left to developer judgment.

La Soluzione

Built with React 19 + TypeScript + MobX (stack required by the task). Domain stores (TaglineStore, UIStore) keep state clean and reactive. @dnd-kit handles drag-and-drop in both the sidebar list and the preview. CSS Modules provide scoped styling. The panel system is component-driven - each sub-panel is an independent slice, making the architecture straightforward to extend.

Il Mio Ruolo

Sole developer - designed and built the entire application as a technical test assignment for the Front-end Engineer position at Onepage.

Risultati

  • Pannello di impostazioni fluttuante con 3 sottopannelli navigabili (lista, crea/modifica, stili)
  • Anteprima live con sincronizzazione dello stile in tempo reale su tutte le 4 varianti, 5 dimensioni, 5 raggi
  • Riordinamento tag tramite trascinamento nella lista della barra laterale e anteprima canvas
  • Persistenza API simulata - POST attivato su ogni mutazione
  • Architettura estensibile - nuovi tipi di elementi e controlli si aggiungono senza refactoring

Stack Tecnologico

Progetto simile?

Discutiamo i tuoi requisiti e costruiamo qualcosa di grande.

Avvia un progetto