Java Development Kit (JDK)
Gradle
LibGDX
Entity-Component-System (ECS) architecture
This is a classic snake game developed using LibGDX and Ashley.
Classic snake gameplay
Growing snake body
Randomly generated food
Game over detection
Simple and intuitive user interface
Use the arrow keys to control the direction of the snake.
Eat food to grow the snake's body.
Avoid hitting the walls and your own body, or the game will be over.
Entities can dynamically add or remove components, making it easy to change the characteristics and behavior of game objects at runtime. The loose coupling between components and systems makes the code easier to extend and maintain.
Components are independent, reusable units that can be shared among different entities. Systems can also be implemented independently of specific entities and components, making the code more modular and reusable.
By separating data and logic, ECS architecture makes the code clearer and easier to understand and debug. Components focus on data, and systems focus on logic, improving code maintainability through clear division of responsibilities.

