{"id":27078,"library":"jobase","title":"JoBase","description":"JoBase is a fast Python game library for beginner coders. Version 3.2 provides a simplified interface for game development, designed to be easy to learn for novices. Release cadence is irregular.","status":"active","version":"3.2","language":"python","source_language":"en","source_url":"https://github.com/jobase/jobase","tags":["game-development","beginner","pygame","2d"],"install":[{"cmd":"pip install jobase","lang":"bash","label":"Install JoBase"}],"dependencies":[{"reason":"JoBase uses pygame as a backend for graphics and input.","package":"pygame","optional":false}],"imports":[{"note":"Direct import of Game class is the common pattern, not the top-level module.","wrong":"import jobase","symbol":"Game","correct":"from jobase import Game"},{"note":"No common wrong import.","symbol":"Sprite","correct":"from jobase import Sprite"}],"quickstart":{"code":"from jobase import Game, Sprite\n\nclass MyGame(Game):\n    def setup(self):\n        self.player = Sprite('player.png', x=100, y=100)\n\n    def update(self):\n        if self.keyboard.pressed('LEFT'):\n            self.player.x -= 5\n        if self.keyboard.pressed('RIGHT'):\n            self.player.x += 5\n\nif __name__ == '__main__':\n    MyGame().run()","lang":"python","description":"Create a simple game with a player sprite that moves left/right."},"warnings":[{"fix":"Update imports and class names: use from jobase import Game, Sprite.","message":"JoBase 3.x uses Python 3 only and has different class names compared to 2.x (e.g., Game instead of Window).","severity":"breaking","affected_versions":"2.x to 3.x"},{"fix":"Ensure image files are in the correct directory or use a placeholder.","message":"The Sprite class requires an image file; if the file is missing, it may crash silently or raise an error. Always verify paths.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use: from jobase import Game","cause":"Trying to access Game via import jobase and then jobase.Game, but Game is not directly on the top-level module.","error":"AttributeError: module 'jobase' has no attribute 'Game'"},{"fix":"Place the image file in the same directory as the script or provide a full path.","cause":"The image file specified in Sprite does not exist or is in a different directory.","error":"pygame.error: Unable to open file 'player.png'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}