FloorspaceJS

FloorspaceJS is a free, open-source, and cross-platform 2D floor-plan editor. Implemented in JavaScript and operating on a custom JSON schema, FloorspaceJS can run standalone in a browser or be embedded into applications. One of the first applications Floorspace has been embedded into is the OpenStudio application, initially as a complement to the OpenStudio SketchUp plug-in and eventually as a replacement for it.

FloorspaceJS is designed for the creation and editing of simple building geometry, the kind that is needed to support whole-building energy modeling (BEM). The FloorspaceJS JSON schema includes BEM-related objects and attributes like constructions, spaces, space-types, and thermal zones, but is not a full-fledged CAD or BIM schema. Similarly, the FloorspaceJS editor is not a CAD or BIM authoring tool. The editor is grid-based and allows users to draw floor-plates, place doors windows, skylights, and shading devices, and associate BEM data like constructions and space types with spaces and surfaces. More advanced features like multi-story spaces, skylights, pitched roofs, and photovoltaics. Features like curved surfaces, pitched walls, non-rectangular walls and windows, and non-perpendicular shading devices are not compatible with the FloorspaceJS schema. Applications requiring support for these features should look into CAD/BIM integration.