When comparing pygame vs Crafty.js, the Slant community recommends pygame for most people. In the question“What are the best 2D game engines?” pygame is ranked 16th while Crafty.js is ranked 37th. The most important reason people chose pygame is:
Pygame uses Python as its scripting language. Python is widely considered one of the easiest languages to grasp even for beginners.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easy Python syntax
Pygame uses Python as its scripting language. Python is widely considered one of the easiest languages to grasp even for beginners.
Pro Very easy to understand
The API is very straightforward.
Pro Good canvas system
Pygame has a drawing system that allows the user to create and draw on an unlimited number of canvases.
Pro Javascript
Pro Eventbinding
Easy to learn, based on Entities and Components, the later being class-like objects that entities inherit.
Pro Modular
Has open function binding systems, allowing easy creation of custom components.
Cons
Con Deathly slow
Con Nonexistent community
No good forums, wiki, or other ways to reach other Pygame developers.
Con Very basic
Pretty much just a wrapper for SDL.
Con Pygame is a multimedia framework, not a game engine
Physics, AI and networking are not supported.
Con Messy documentation
The docs are messy, and some basic functions are infuriating to work out. There's even some places in the documentation where it's clearly wrong about how a method is called/what the arguments really do.
Con Outdated
Pygame uses a really old version of SDL and is missing some of the features developed for SDL2.
Con Hasn't been updated in years
Hasn't been updated in years.
Con No IDE
If you like having some huge GUI akin to Gamemaker, Unreal, Unity, etc, Crafty is not for you.