a <canvas> game framework that does as little as possible
CoffeeScript
Latest commit 5fc53f7 Aug 30, 2016 @nornagon committed on GitHub Update README.md
Permalink
Failed to load latest commit information.
LICENSE Add BSD license. Jan 31, 2012
README.md Update README.md Aug 30, 2016
atom.coffee Merge dommmel's fix for #3 Jul 16, 2013

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.