{"slug": "pygame", "name": "Pygame", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 3, "commenters": 7, "warners": 0, "score": 3.514, "rising": -0.98, "first": "2026-01-01", "latest": "2026-10-02", "why": "This is why I think Pygame is so useful for education, it sits at just the right level of abstraction for learning.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 3, "compare": 1, "warn": 0}, "spark": [0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "This is why I think Pygame is so useful for education, it sits at just the right level of abstraction for learning.", "kind": "", "icon": true, "domain": null, "github_repo": null, "official_url": "https://www.pygame.org/", "pricing": "", "aliases": ["Pygame", "pygame"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 767823217, "item_id": 47988951, "url": "https://news.ycombinator.com/item?id=47988951", "by": "krapp", "date": "2026-05-02", "stance": "recommend", "quote": "You might also look at Python and Pygame.", "excerpt": "Everyone is going to recommend their favorite framework. I'll throw my hat in for Godot, but really any framework will do. Although I think it depends on whether she wants to learn to make games, or to be a programmer. If you're using a framework, what you're really learning is the framework. You might also look at Python and Pygame.", "context": "", "use_case": "beginner game development", "switched_from": "", "story": "Ask HN: Best way to develop games for beginners"}, {"id": 745365536, "item_id": 46585346, "url": "https://news.ycombinator.com/item?id=46585346", "by": "notenlish", "date": "2026-01-11", "stance": "recommend", "quote": "Pygame would be the perfect use case for this", "excerpt": "Pygame would be the perfect use case for this. It also supports running in the browser via https://pypi.org/project/pygbag/", "context": "", "use_case": "", "switched_from": "", "story": "Moving Scratch generation to Python on browser"}, {"id": 745343024, "item_id": 46583939, "url": "https://news.ycombinator.com/item?id=46583939", "by": "njoyablpnting", "date": "2026-01-11", "stance": "recommend", "quote": "This is why I think Pygame is so useful for education, it sits at just the right level of abstraction for learning.", "excerpt": "This is super cool! Would love to see how you hooked up Ruff and ty. Just curious, why not use Pygame? Scratch abstracts away a ton of stuff to allow the student to focus on logical building blocks that mirror the mental model one might have when writing a real program. I'm wondering if keeping a lot of those abstractions when transitioning to text programming is educationally useful? For example, it might not be cle", "context": "teaches beginners", "use_case": "teaching programming", "switched_from": "", "story": "Moving Scratch generation to Python on browser"}]}], "caveats": [], "who": [{"by": "njoyablpnting", "context": "teaches beginners", "url": "https://news.ycombinator.com/item?id=46583939", "date": "2026-01-11"}], "tags": [], "use_cases": ["beginner game development", "teaching programming", "graphics course exercises"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=46551352", "title": "Moving Scratch generation to Python on browser", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49928215", "title": "Show HN: Pyxel \u2013 A Python retro game engine with built-in art and sound editors", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47985156", "title": "Ask HN: Best way to develop games for beginners", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47741527", "title": "Ask HN: What Are You Working On? (April 2026)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46855553", "title": "Jupyter Games on Notebook.link", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46446815", "title": "I canceled my book deal", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {"neutral": 1, "recommend": 2}, "2026-02": {"neutral": 1}, "2026-03": {}, "2026-04": {"neutral": 1}, "2026-05": {"recommend": 1}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {"compare": 1}}, "quotes": [{"id": 798873235, "item_id": 49929577, "url": "https://news.ycombinator.com/item?id=49929577", "by": "kitao", "date": "2026-10-02", "stance": "compare", "quote": "Compared with Pygame, which is more general-purpose, Pyxel deliberately narrows its scope and specifications.", "excerpt": "On AI, I have two goals. First, I want Pyxel's simple API to make programming and game creation enjoyable for people writing code themselves, without AI. On the other hand, I also think its simple, focused design makes it a useful library for AI-assisted development, including vibe coding. I've published Pyxel MCP (https://github.com/kitao/pyxel-mcp) and Pyxel Skill (https://github.com/kitao/pyxel-skill) to support t", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: Pyxel \u2013 A Python retro game engine with built-in art and sound editors"}, {"id": 767823217, "item_id": 47988951, "url": "https://news.ycombinator.com/item?id=47988951", "by": "krapp", "date": "2026-05-02", "stance": "recommend", "quote": "You might also look at Python and Pygame.", "excerpt": "Everyone is going to recommend their favorite framework. I'll throw my hat in for Godot, but really any framework will do. Although I think it depends on whether she wants to learn to make games, or to be a programmer. If you're using a framework, what you're really learning is the framework. You might also look at Python and Pygame.", "context": "", "use_case": "beginner game development", "switched_from": "", "story": "Ask HN: Best way to develop games for beginners"}, {"id": 763916384, "item_id": 47744774, "url": "https://news.ycombinator.com/item?id=47744774", "by": "ec_games", "date": "2026-04-12", "stance": "neutral", "quote": "I coded a visual novel/adventure game framework in pygame.", "excerpt": "I coded a visual novel/adventure game framework in pygame. Pretty much just to see if ai could handle a full project. Eventually I got scope creeped into a full game with branching stories, item crafting, and a custom cutscene engine...even Trained a model for a few specific art assets. https://store.steampowered.com/app/4301600/Cherrys_Dungeon/", "context": "", "use_case": "", "switched_from": "", "story": "Ask HN: What Are You Working On? (April 2026)"}, {"id": 749703696, "item_id": 46856481, "url": "https://news.ycombinator.com/item?id=46856481", "by": "westurner", "date": "2026-02-02", "stance": "neutral", "quote": "This says it will run pygame", "excerpt": "This says it will run pygame (and maybe pygame zero) in a jypyter notebook: https://github.com/Python-Ninja-Hebi/pygame-cookbook?tab=readme-ov-file#pygame-and-jupyter-notebooks : %gui qt import pygame Jupylet does 2D and 3D games in jupyter notebooks: https://github.com/nir/jupylet awesome-jupyter-in-education still lists a number of Games, Graphics, And Simulation resources: https://github.com/quobit/awesome-python-", "context": "", "use_case": "", "switched_from": "", "story": "Jupyter Games on Notebook.link"}, {"id": 745365536, "item_id": 46585346, "url": "https://news.ycombinator.com/item?id=46585346", "by": "notenlish", "date": "2026-01-11", "stance": "recommend", "quote": "Pygame would be the perfect use case for this", "excerpt": "Pygame would be the perfect use case for this. It also supports running in the browser via https://pypi.org/project/pygbag/", "context": "", "use_case": "", "switched_from": "", "story": "Moving Scratch generation to Python on browser"}, {"id": 745343024, "item_id": 46583939, "url": "https://news.ycombinator.com/item?id=46583939", "by": "njoyablpnting", "date": "2026-01-11", "stance": "recommend", "quote": "This is why I think Pygame is so useful for education, it sits at just the right level of abstraction for learning.", "excerpt": "This is super cool! Would love to see how you hooked up Ruff and ty. Just curious, why not use Pygame? Scratch abstracts away a ton of stuff to allow the student to focus on logical building blocks that mirror the mental model one might have when writing a real program. I'm wondering if keeping a lot of those abstractions when transitioning to text programming is educationally useful? For example, it might not be cle", "context": "teaches beginners", "use_case": "teaching programming", "switched_from": "", "story": "Moving Scratch generation to Python on browser"}, {"id": 743291296, "item_id": 46455706, "url": "https://news.ycombinator.com/item?id=46455706", "by": "drivers99", "date": "2026-01-01", "stance": "neutral", "quote": "I used python and Pygame at the expense of speed.", "excerpt": "I really enjoyed this one as an introduction: https://www.gabrielgambetta.com/computer-graphics-from-scratch/ It touches on both ray traced and raster graphics. It lets you use whatever language and graphics library you want as long as you can create a canvas/buffer and put pixels on it so you can target whatever platform you want. It includes links to JavaScript for that if you want. (I didn\u2019t want to use a new-to-m", "context": "", "use_case": "graphics course exercises", "switched_from": "", "story": "I canceled my book deal"}]}