try:
    import _path
except NameError:
    pass
import spyral
import sys

SIZE = (600, 600)
BG_COLOR = (0, 0, 0)
    
class StupidSprite(spyral.Sprite, spyral.Actor):
    def __init__(self, camera):
        spyral.Sprite.__init__(self, camera)
        spyral.Actor.__init__(self)
        
        self.image = spyral.Image(size=(10, 10))
        self.image.fill((255, 255, 255))
        self.pos = (0, 0)
        self.anchor = 'center'
        
    def main(self, dt):
        right = spyral.Animation('x', spyral.animator.Linear(0, 600), duration = 1.0)
        down = spyral.Animation('y', spyral.animator.Linear(0, 600), duration = 1.0)
        left = spyral.Animation('x', spyral.animator.Linear(600, 0), duration = 1.0)
        up = spyral.Animation('y', spyral.animator.Linear(600, 0), duration = 1.0)
        while True:
            self.run_animation(right)
            self.run_animation(down)
            self.run_animation(left)
            self.run_animation(up)
         
class Game(spyral.Scene):
    def __init__(self):
        spyral.Scene.__init__(self)
        self.clock.max_ups = 60.
        self.camera = self.parent_camera.make_child(SIZE)
        self.initialized = False

        def add_new_box():
            StupidSprite(self.camera)
        add_new_box()
        
        self.register('system.quit', sys.exit)            
        self.register('input.keyboard.down', add_new_box)
        
    def on_enter(self):
        if self.initialized:
            return
        self.initialized = True

        bg = spyral.Image(size=SIZE)
        bg.fill(BG_COLOR)
        self.camera.set_background(bg)
                
    def render(self):
        self.camera.draw()        

if __name__ == "__main__":
    spyral.init()
    spyral.director.init(SIZE)
    spyral.director.push(Game())
    spyral.director.run()

Add a simple actor example.