Smplrspace changelog
The definitive source of product updates on our lean digital twins
Search releases
Bug fixes
2 April 2026

🙈 We forgot to set some environment variables in v2.52.0, so we had to release again.

Nothing new, but shiny new version ✨.

Share

Features
2 April 2026

🎉 New features

  • We've launched the digitization order system in private beta — automated quotes, clearer progress tracking, and optional pre-submission estimates. Reach out if you'd like to be among the first to onboard.

  • You can now download a CSV template from the Entity manager to help you prepare your data before importing.

💅 Improvements

  • You can now give spaces an alias in projects — so "Tower B" shows instead of "Tokyo IT Park V - Tower B" once you're in the right context.

  • We've extended protectScroll cooperative gesture support to touch screens — users can scroll the page normally on mobile and use two fingers to interact with the viewer.

🐛 Bug fixes 

  • We've fixed an issue where resizing equipment in large spaces would unintentionally deselect it.

  • We've fixed an issue where adjusting equipment length could inadvertently change its width, and vice versa.

  • We've fixed a bug that made resizing shelves with doors difficult due to incorrect dimension calculations.

  • We've fixed an issue where equipment would disappear at high zoom levels in large spaces.

  • We've fixed an issue where the open panel count on sliding doors could be incorrect.

📚 Documentation

Share

Features
12 March 2026

🔐 Security

  • We've updated the QueryClient API so you only need to pass an organization ID when it cannot be inferred from a space, making the client simpler to use and tightening sensitive data exposure. Explore the changes in the docs.

  • We now support the creation of client tokens scoped to specific spaces or projects, giving you the tools to build fine-grain access control. This is ideal for multi-tenant deployments where client tokens shared with a specific tenant should restrict access to that tenant.

 

🧠 AI agents and LLMs

  • Our developer documentation now supports Markdown for Agents. AI agents and LLMs will automatically receive responses in markdown format, which is ideal for AI processing and leads to better results while minimizing token waste. Each response includes an x-markdown-tokens header indicating the estimated number of tokens in the markdown document — useful for calculating context window size or optimizing your AI workflows. This makes Smplrspace easier, faster, and cheaper to use for AI, and improves your developer experience.

 

🎉 New features

  • We've added a GeoPolyline data layer to the map viewer so you can render routes, boundaries and other line geometry directly on the map. More details in the docs.

  • The map-based entity manager now lets you create and manage GeoPolyline entities alongside your existing point and polygon layers.

  • Map-based reports now understand GeoPolyline layers, so you can analyze line-shaped data next to your existing point and polygon reports.

  • You can now select multiple elements in the editor at once — hold Shift or Ctrl/Cmd and click to build up a selection across walls, floors, roofs, openings, stairs, annotations, and equipment.

  • Elements can also be multi-selected from the components tree on the left panel — Ctrl/Cmd-click to toggle items, Shift-click to select a range.

  • When multiple elements of the same type are selected, the properties panel shows their shared settings and lets you edit them all at once — e.g. change wall height, floor style, opening dimensions, layers. It also includes bulk actions like copying elements to another level or deleting elements.

  • Right-clicking on a multi-selection opens a context menu that lets you perform actions on all selected items in one go.

  • The Equipment editor now has a right-click context menu as well, consistent with how the Layout editor's context menu works.

  • You can now draw new walls that inherit the options of the currently selected wall, which makes it easy to duplicate columns or repeat a specific wall configuration.

  • You can now switch between our default map style and a satellite view in the map viewer and map-based projects with a single toggle. See how to enable it in the docs.

  • QueryClient now includes a helper to compute the midpoint of a polyline, which simplifies placing labels or markers along long routes. See the docs.

  • QueryClient now exposes an endpoint that returns all levels of a space with indices, names and initials, making it straightforward to build custom level pickers. Learn more in the docs.

  • You can now set the default swing angle for doors in space defaults; new spaces start at 90° but you can tune this to match your standards.

 

💅 Improvements

  • We've aligned the selection color to be consistent between the layout and the equipment editor.

  • You can now define default layers for all feature types via space defaults in the editor, so new elements come in with the right layer configuration from the start.

  • Complex editor operations that bundle many low-level changes now show up as a single undo or redo step, which makes bulk actions much easier to reason about.

  • When several points overlap, dragging now prefers the feature you have selected, so edits feel more predictable.

 

🐛 Bug fixes

  • We've fixed a bug where tooltips on shell layers could flicker, so they now feel stable when you move your cursor.

  • We've fixed a rare crash in the 2D viewer caused by walls that are fully covered by openings.

  • We've fixed a conflict between the editor's F hotkey and the browser's Cmd/Ctrl+F shortcut so search behaves as expected.

  • We've fixed an issue where data layers sometimes failed to refresh when switching between 2D and 3D, so overlays now update reliably.

  • We've fixed a rendering issue where dense point layers could appear incorrectly at certain zoom levels on the map viewer.

  • We've fixed a bug that could leave the editor briefly unresponsive after closing a right-click menu.

Share

Features
19 February 2026

🔐 Security fixes

  • Calls to create spaces or change their status through the QueryClient now correctly enforce authorization, so only permitted users and integrations can perform these actions. 

🎉 New features

  • You can now toggle Mapbox 3D buildings on and off from the map viewer API, so you decide when to keep the map clean or highlight surrounding buildings. More details in the docs.

  • Polyline layers now support a mitered join mode that keeps line widths more consistent around corners, reducing stretching artifacts. See the docs.

💅 Improvements

  • You can now resize equipment from one side only by default, and hold Option on Mac or Ctrl on Windows to go back to the previous mirrored resize on both sides.

  • We've optimized the re-rendering cost of changing renderOptions.floorplan in the space viewer.

  • The space viewer now only renders the floor plan of the top visible level.

  • The equipment editor and the entity manager now share the same F hotkey to quickly show just the floor plan, like in the layout editor.

🐛 Bug fixes

  • When you switch reports in a map-based project, your space and level selection now stays intact instead of being cleared.

Share

Features
30 January 2026

🎉 New features

  • We've added new geometry helpers to the SDK.

    • doSegmentsIntersect lets you check for intersection between 2D line segments (docs).

    • isPolygonAInPolygonB lets you check whether a polygon is completely contained within another polygon (docs).

    • fitRectangleInPolygon finds the optimal position and rotation for a rectangle within a polygon (docs). This is useful for space planning, furniture placement, or to optimize the size of logos in leasing reports, among others.

    • getRectangleCorners computes the corners for a rectangle returned by fitRectangleInPolygon (docs).

  • In the entity manager, you can now drop an image into a room and have it auto-fit with one click, powered by the new fitRectangleInPolygon endpoint.

  • The poster data layer now supports placing images automatically to fit polygons using the new fitRectangleInPolygon API. Learn more in the docs.

  • The poster auto-fit feature is also available in reports.

  • Reports now support multiple data layers based on the same data source.

  • In the layout editor, you can now split a wall into two segments at a point. This makes it easier to trim parts of a wall or adjust wall properties independently on each side.

  • The map entity manager now has a search bar so you can quickly find specific places on the map.

  • You can now add tags when creating spaces programmatically and filter spaces by tag via the query client, making it easier to organize and retrieve the spaces you care about. Learn more in the docs.

💅 Improvements

  • Smart zoom now adapts to tall spaces by adjusting for building height, and the camera moves up and down automatically as you switch levels.

  • The space viewer now updates each data layer independently, so changes to one layer no longer force others to re-render, improving performance on complex scenes.

  • Equipment 3D models are now served from a dedicated custom domain, which simplifies CSP configuration in your app and improves caching so equipment loads faster.

Share

Features
14 January 2026

Welcome to 2026, and let's start the year with a first release ✨.

🎉 New features

  • You can now enable optional scroll protection in both viewers. When users scroll without holding cmd/ctrl, we prevent accidental zooms so you can implement cooperative gestures in scrollable layouts more easily. Learn more in the docs. And shout-out to our friends at Akenza for the inspiration ✌️.

  • Space JSON export is now available to all users: export from the space profile’s settings and re-import from the editor’s advanced tab.

  • We’ve upgraded the armchair, 2‑seater and 3‑seater sofas to parametric equipment that loads instantly, works in both 2D and 3D, and can be stretched to any length and configured to a precise seat count.

    • We’ve built an automation to upgrade existing spaces to the new parametric sofas—reach out at support@smplrspace.com if you’d like us to run it for you. 🤖

  • smplr.js now exposes a Utils namespace with helpers like SpaceSid and isSpaceSid, making it easier to validate and work with Smplrspace IDs in your own code. More details are available in the docs.

💅 Improvements

  • The space viewer now uses a dedicated default renderingMessage, making it clearer when a space is still rendering versus loading—especially in embedded and progressively rendered viewers.

🐛 Bug fixes

  • We’ve tightened up viewer loading states across the app so loading feedback is more consistent.

  • We’ve fixed an issue where some map-based projects could open at the location of the previously opened project instead of the current one.

  • We've fixed an issue where the furniture data layer sometimes failed to initialize when using the default color.

  • We’ve resolved a rare issue where hover interactions on furniture stopped working after switching the viewer from 2D to 3D.

  • We’ve improved the loader logic for progressive rendering in the space viewer, so loading messages behave more reliably.

  • We’ve fixed an issue where the set of included levels could reset unexpectedly when toggling between 2D and 3D modes.

Share

Features
30 December 2025

This is our final release for 2025 ✨, and it's a robust one, featuring the addition of multi-space reports. These reports allow you to view data for all spaces on a single screen, enabling comprehensive campus-level reporting. This is a foundational step toward our vision of portfolio-level reporting. 2026 promises to be exciting 🙌. 

🎉 New features

  • Bring data from multiple spaces into a single campus report with aggregated stats and consolidated search—ideal for office parks, universities, and other nearby buildings on the map.

  • Use the new automatic space filter in campus reports to see all buildings at once, then quickly narrow down to a single building when you need more detail.

  • Add an optional search box to the map viewer so users can jump to places using addresses or GPS coordinates—just like any familiar web map. See search in the docs.

  • Use the new public, full-screen map page to explore Smplrspace’s building coverage, with a search box to quickly find any location. Try it here.

  • Use the new text-as-image micro-service to generate SVG logos from text, so you can fall back to a dynamic logo URL in icon or poster layers when brand assets are missing.

  • Use the new json helper in Handlebars tooltip templates to work more easily with structured data inside custom BI tooltips. Learn more in the docs.

💅 Improvements

  • Viewer loading states have been redesigned for both map and space viewers so they stay clear without blocking interaction, including better behavior for cached and progressively loaded spaces.

  • The viewer info icon now stays legible on dark backgrounds.

  • Organization invitations now stay valid for 90 days (up from 5) to better match longer enterprise onboarding cycles.

🐛 Bug fixes

  • Fixed an issue where the viewer on a space’s projects page could appear empty.

  • Fixed splitting entity groups by level in the entity manager when using the “split by level” option.

  • Fixed a level extraction error that could happen when a space included an empty level.

  • Fixed Google Sheets syncing so imports with unmapped furniture entities (empty furnitureId) no longer fail.

Share

Features
9 December 2025

🎉 New features

  • The map viewer is getting its biggest update yet! We're upgrading to the latest 3D base map from Mapbox, giving you improved 3D building data, modern lighting and map styling, curated landmarks manually modeled in 3D, trees, and more. We've applied our Smplrspace sauce on it too, to make it fit for our purpose: data visualization. Below is a before / after video for your enjoyment.

💅 Improvements

  • The icon or poster mode selector in the entity manager is now applied per group and persisted in the database.

  • We've added motion options on the map viewer's setCameraPlacement method. This change deprecates the previous options, so have a look at the docs and adapt your code. More details in the docs.

  • The map viewer now take a cameraPlacement option which is used as default camera placement when the viewer starts, as well as as placement when the user click the button to reset / recenter the view. See the docs.

🐛 Bug fixes

  • We've fixed some inconsistencies with the slider filter, where it would sometimes be displayed with a single value, or could be stale after a page change.

  • We've fixed an issue that broke setting preview images.

Share

Features
26 November 2025

🎉 New features

  • The Entity Manager now has Google Sheets synchronization built-in. This is ideal for quick editing, collaboration, and backups — all without importing and exporting nasty little CSV files 😉. It also lets enterprise users edit their inventory-type reports directly in Google Sheets and import the updated data to Smplrspace in one click. Head to the "..." menu in the Entity Manager to try it out.

  • You can now manually edit the individual coordinates of points and images in the entity manager.

  • The map viewer now supports the point data layer, which takes points compatible with the space viewer's point data layer and renders them on the map. Both layers are fully API compatible, except for alpha which is not supported on the map. Details in the docs.

  • We've improved the type of the diameter option in the space viewer's point data layer. See the docs.

  • The reports now support the new poster data layers.

  • The reports now support icon data layers.

  • Data visualization in reports now support data driven numerical and string parameters.

💅 Improvements

  • We've improved state management so your filter values are maintained when you change the active space in a report.

  • We've added select all / clear all buttons to the category filter, to make it easier to isolate specific items versus show it all.

  • We've improved the layout of the level explorer and entity records report templates to make spaces for longer label.

  • Posters now have shadows, so they feel a little less like vampires 🧛‍♂️.

🐛 Bug fixes

  • We have fixed the hover issues that happened on the map viewer's data layer. You can now reliably hover and click data layer elements on the map.

  • We've fixed some inconsistencies with the behavior of slider filters.

Share

Features
12 November 2025

🎉 New features

  • We've added the poster data layer, which lets you render images that are fixed in the space the way a poster, sticker, or panel would be. And these are of course data driven and interactive. Learn more in the docs.

  • We've added new sizing options to the icon data layer, bringing it on par with the poster data layer. Icons can be sized at the element or at the layer level, and by width or height preserving image ratio, or both overriding image ratio. Details in the docs.

  • Image based layers like posters and icons can now be managed in the entity manager. We've created a special mode dedicated to images, that lets you load images from any url, size them, and position them in 3D.

💅 Improvements

  • The size of the image for icon data layers is now automatically detected after loading and applied. So it's simpler to use and makes icon and poster layers interchangeable.

  • The icon data layer "icon" parameter has been replaced by "image" to make it interchangeable with the poster layer. See the docs.

🐛 Bug fixes

  • We've fixed an issue with the range sliders not taking the minimum value changes into account.

Share

Next page