Giter VIP home page Giter VIP logo

mobimon's Introduction

Mobimon Coming Soon....

TODO:

  • Project Scaffolding - done
  • Set up project testing - done
  • Migrate old still useful code
  • Come up with a way to hook core and plugins
  • set up prod built distro

Game Architecture:

  • core - Game Platform
  • cartridges - Game extensions

Scaffolding: Platform type design where core will be the platform.

When using cartridges, core is then used by a cartridge; which should copy core and then mixin functionality.

All plugins should be self contained and have the same Public API, this will allow the communication of core and cartridges.

  • core - base game and resources for base game

    • config: shared configs
    • public: client side resources.
    • server: server side resources.
    • shared: shared resources within core only.
  • shared - resources that should be kept top level as they can be shared between core and cartridges.

    • images - images.
    • info - json files.
  • node_modules - Kept top level to prevent repo bloat.

  • cartridges - self contained modules that hook into core, where core is then imported as a type of "controller."

Testing:

  • Using tape for now.
    • mark untested modules:
  import helpers from '../../utils/test/test.helpers';

  test('Create tests for Main Page', assert => helpers.createFailingTest(assert));

Quirks:

  • props.router.replace('/login') does not rewrite url in dev server.
  • redux-logger middleware does not print redux-loop side effects.

Commands Available:

## Commands
## [] Square brackets are optional
## (e.g. start -> start:dist)

# Start server (default is dev environment)
# or dev server with dist version
npm start[:dist]
# Start watch on core or cartridges
npm run watch[:cartridges]

# Build dist
npm run build:dist


## Utils
# Run all tests or core or cartridges or e2e (safari)
npm run test[:core, :cartridges, :e2e]
# Lint all or core/{public, shared} or cartridges
npm run lint[:core, :cartridges]

# Copy static assets into dist
npm run copy
# Clean up the dist directory
npm run clean
# update dependencies and check for unused dependencies
npm run update

Credits:

Monsters' artwork was done by Mike Mazur!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.