npm Build Status codebeat badge

General Engine is a framework to build creative scenarios.

To check out live examples created with general-engine, please visit gallery website.

🌳 Tree

🕊 Flyer

💥 Walker

🌀 Endless Abyss

Game of life

🌿 L-System Tree

🎵 Audio Visualizer


Download a stable release and include the script in your web page:

<script src="general-engine.core.js" type="text/javascript"></script>

You can also install using the package manager NPM.

$ npm install general-engine

Hello World

The following is a simple hello-world example.

import { GeneralInterface, GeneralObject } from "../src/Core/GeneralObject";

class IPrintInterface extends GeneralInterface {
    print = [];

class PrintBase extends GeneralObject<IPrintInterface>{
    constructor() {
        this.implements(new IPrintInterface());

class PrintA extends PrintBase {
    print() {
        console.log("Hello World");

class PrintB extends PrintBase {
    print() {
        console.log("Hello General-Engine");

new PrintA().joint(new PrintB()).processes.print.process();

// Output:
// Hello World
// Hello General-Engine


To build you must first install node.js and gulp, then run

$ npm install

This will install the required build dependencies, then run

$ gulp watch

to spawn a development server.