Skip to content

playlegendold/WorldEditLab

Logo

WorldEditLab

A fancy and simple UI for up- & downloading schematics and heightmaps

Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Dev Environment
  4. Contributing
  5. License
  6. Contact

About the project

WorldEditLab serves as a replacement for the old but very outdated web panel for WorldEdit. Schematics and heightmaps can be uploaded via WorldEditLab. These can then be used in-game. WorldEditLab combines ease of use with important features like SAML2 and permission management. Heightmaps and schematics can be sorted and tagged with different tags. Schematics can also be published through different access levels.

Built with

WorldEditLab was built on well maintained packages:

Getting started

To use WorldEditLab itself you only need to start a docker container. Of course, more complex setups can also be built in Kubernetes or similar environments. A helm chart is currently still in the works.

Usage with docker-compose

Here is an example using docker-compose.yml:

version: "3.9"
services:
  wel:
    image: playlegend/worldeditlab
    volumes:
      - /opt/world-edit-lab:/usr/src/app/data
    ports:
      - "8080:8080"
    environment:
      - COOKIE_SECRET="your_session_secret"
      - BASE_URL="http://foobar.com:8080"     

To make WorldEditLab compatible with FastAsyncWorldEdit, please add the following environments:

    environment:
      - FAWE_UPLOAD_ACCESS=::ffff:127.0.0.1
      - FAWE_USER_ID=1

Environment Variables

Name Type Required Description Default
COOKIE_SECRET string yes This is the secret used to sign the session ID cookie null
BASE_URL string yes Base URL from WorldEditLab null
FAWE_UPLOAD_ACCESS string no IP Whitelist (separated through ',') null
FAWE_USER_ID int no Owner of all uploaded content null
UPLOAD_LIMIT int no File upload limit 5,242,880

Dev Environment

Prerequirements

Yarn package manager

npm install -g yarn

Downloading all dependencies

yarn install

Compiles and hot-reloads for development

yarn serve

Compiles and minifies for production

yarn build

Run project

yarn start

Lint files

yarn lint

Contributing

Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the GPL-3.0 License. See LICENSE for more information.

Contact

Legend Team - [email protected]

Project Link: https://github.com/playlegend/WorldEditLab