Kenchu123 / LightDance-Editor

LightDance editor for choreographing and controlling.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

NTUEE LightDance Editor

Release Contributors License

An Editor for editing and simulating light dance show

Architecture

image

Services

http://localhost:8080 - editor
http://localhost:4000 - editor-server
http://localhost:8081 - file-server
http://localhost:8082 - controller-server

Development

Docker

You can use Docker to install and start all the services. You can see the editor on http://localhost:8080.

docker-compose -f dev.docker-compose.yml up -d

Local

Install the dependencies

This will install all the dependencies in the subfolders.

yarn install:all

Run the services

This will run all the services parallelly. You can see the editor on http://localhost:8080.

yarn dev

For development for editor-server

You need to have MongoDB running on mongodb://localhost:27017

docker-compose -f dev.docker-compose.yml up -d mongodb redisdb

Initialize Database

After starting all services, one can add 2021's control and position data into mongoDB.

cd utils
yarn
export NODE_OPTIONS="--max-old-space-size=8192" // Incase heap out of memory
node initDB.js ${filePath}
// node initDB.js ../others/dance_json/export.json
node initLED.js ${filePath}
// node initLED.js ../others/dance_json/test_exportLED.json

Production

Create the eeinfo network

docker network create eeinfo

Run services nginx, editor, editor-server, file-server, redisdb, mongodb.

docker-compose -f prod.docker-compose.yml up -d

Editor will run on http://localhost:8080.

Editor-server will run on http://localhost:4000.

Initialize Database

After starting all services, one can add 2021's control and position data into mongoDB.

cd utils
yarn
export NODE_OPTIONS="--max-old-space-size=8192" // Incase heap out of memory
node initDB.js ${filePath}
// node initDB.js ../others/dance_json/export.json
node initLED.js ${filePath}
// node initLED.js ../others/dance_json/test_exportLED.json

About

LightDance editor for choreographing and controlling.

License:MIT License


Languages

Language:TypeScript 86.0%Language:JavaScript 12.4%Language:CSS 1.0%Language:Python 0.3%Language:Dockerfile 0.3%Language:HTML 0.1%