a <canvas> game framework that does as little as possible
CoffeeScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
LICENSE Add BSD license. Jan 31, 2012
README.md
atom.coffee

README.md

atom

a <canvas> game framework that does as little as possible

Honestly, this thing does so little that you should just read the code.

Here's what a game using Atom looks like:

class Game extends atom.Game
  constructor: ->
    super
    atom.input.bind atom.key.LEFT_ARROW, 'left'
    atom.input.bind atom.key.RIGHT_ARROW, 'right'

  update: (dt) ->
    if atom.input.pressed 'left'
      console.log "player started moving left"
    else if atom.input.down 'left'
      console.log "player still moving left"

  draw: ->
    atom.context.fillStyle = 'black'
    atom.context.fillRect 0, 0, atom.width, atom.height
    # Carry on.

game = new Game

window.onblur = -> game.stop()
window.onfocus = -> game.run()

game.run()
<canvas></canvas>
<script src="atom.js"></script>
<script src="game.js"></script>

not a library

atom isn't intended to be used as a library, to be npm installed and require()d. It's intended to be a starting point, a nucleus around which you build your game. Copy it into your source folder and tweak it when you need to.