MCPcopy Index your code
hub / github.com/2listic/datacenter-planner

github.com/2listic/datacenter-planner @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
49 symbols 117 edges 12 files 5 documented · 10%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Datacenter Planner

A web-based tool to convert 2D floorplans into interactive 3D scenes. Draw a floorplan in a 2D canvas using Paper.js, then switch to a 3D view powered by Three.js to add and manipulate 3D models (e.g., furniture like chairs, tables, racks and coolers).

https://github.com/user-attachments/assets/f8f9f8c5-0197-4fcf-b0da-fb947f87e825

Features

  • 2D Floorplan Creation: Draw walls and layouts on a 2D canvas.

  • 3D Scene Rendering: Convert 2D floorplans into 3D scenes with a single click.

  • Model Management: Add, delete, and transform 3D models using a dropdown menu.

  • Export Capability: Export the 3D scene for further use.

  • Interactive Controls: Use OrbitControls for navigation and TransformControls for model manipulation.

Prerequisites

  • Node.js (version 16 or higher recommended)
  • npm (comes with Node.js)
  • A modern web browser (e.g., Chrome, Firefox, Edge)

Installation

Clone the Repository:


git clone https://github.com/your-username/datacenter-planner.git
cd datacenter-planner

Install Dependencies: Run the following command to install the required dependencies (including Three.js and Vite):


npm install

Running the Application

Start the Development Server:

Use the start script to launch the Vite development server:


npm start

Access the webpage: Open your browser and navigate to http://localhost:5173 (or the port shown in the terminal). The tool will load, displaying the 2D canvas for drawing floorplans.

Build the App and preview

Build and preview the app for production using Vite:

npm run build
npm run preview

Files are now bundled by default into the dist folder.

JSDoc

Generate automatic documentation based on the jsdoc.json configuration:

npm run doc

Check the generated documentation using a local server like live-server:

npm install -g live-server
live-server docs

Development

To format the code before committing:

npm run format

Contributing

We welcome contributions! Please see our Contributing Guide for details on how to get started.

Core symbols most depended-on inside this repo

snapToGrid
called by 6
src/js/2d/floor2d.js
createVertex
called by 4
src/js/2d/floor2d.js
aux_mesh_name
called by 4
src/js/3d/3dObjects.js
setTransformMode
called by 3
src/js/3d/scene3d.js
hideLoadingIndicator
called by 3
src/js/3d/3dObjects.js
setupShortcutsToggle
called by 2
src/js/main.js
createGrid
called by 2
src/js/2d/floor2d.js
updateLengthText
called by 2
src/js/2d/floor2d.js

Shape

Function 49

Languages

TypeScript100%

Modules by API surface

src/js/2d/floor2d.js12 symbols
src/js/2d/dxfLoader.js11 symbols
src/js/3d/scene3d.js6 symbols
src/js/3d/3dObjects.js6 symbols
src/js/3d/rackParticles.js3 symbols
src/js/3d/particleCollisions.js3 symbols
src/js/3d/coolerParticles.js3 symbols
src/js/3d/attractors.js3 symbols
src/js/main.js1 symbols
src/js/3d/pathsTo3d.js1 symbols

For agents

$ claude mcp add datacenter-planner \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact