Classic game we all know and love, written in C with ncurses
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
include Add preprocessor compatibility check to allow Linux compilation Aug 19, 2018
LICENSE Add LICENSE Aug 18, 2018
Makefile Update README Aug 20, 2018


The classic game we all know and love.



The game is made and tested on Windows 10 with PDCurses and MinGW-w64. Tested on Windows 10 with cmd.exe, Cygwin and Git for Windows' bash.exe. Tested to be working on Arch Linux VM.

Required libraries:

  • ncurses (PDCurses)

Other requirements:

  • For building:
    • GNU Make and GCC, preferably with bash or other shell (just not cmd.exe)
  • For playing:
    • a terminal emulator
    • arrow keys


Pre-compiled binaries are planned. For now you have to compile from source (which is dead-easy once you have the required tools).

git clone
cd snake
make && make run

The executables are in target/debug or target/release subdirectories.


You can specify the speed the game should run at. Higher number is slower. Example:

./snake 100

Will run with game speed set to 100. It is basically the amount of milliseconds the program sleeps every frame. Default is 125.

Planned features

  • Persistent high-score table
  • Custom game board size (customized via command-line arguments)
  • Minimal bugs


Licensed under MIT (Expat) license. This program is free software. © 2018 Mateusz Makowski