A simple Pong game implementation written in Go using the Ebiten 2D game engine.
Screencast.From.2025-09-03.02-21-58.mp4
← | →: Move bottom paddle left/right
- Go 1.24.6 or later
- Dependencies are managed via Go modules
-
Clone the repository:
git clone https://github.com/hammadmajid/paddles.git cd paddles -
Install dependencies:
go mod download
# From project root
# Run the main entrypoint
go run ./cmd/paddlesOr build and run:
# Build the binary
go build -o paddles ./cmd/paddles
./paddlesassets/ # Embedded assets (fonts, images)
assets.go # Embeds font(s) for use in game
fonts/array/ # Font files
Array-Bold.otf
cmd/paddles/ # Main entrypoint
main.go
internal/config/ # Global game configuration
config.go
internal/objects/ball/ # Ball logic
ball.go
internal/objects/paddle/ # Paddle logic
paddle.go
internal/states/menu/ # Menu screen
menu.go
internal/states/play/ # Play screen
play.go
internal/states/over/ # Game over screen
over.go
- Format code:
go fmt ./... - Lint:
go vet ./... - Test:
go test ./...
This project is open source and available under the MIT License.