The site you want. Without the dev time.

Get started
Set up in minutes, then
customize to fit your style.
1
datasource db {
2
provider = "sqlite"
3
url      = env("DATABASE_URL")
4
}
5
6
generator client {
7
 provider = "prisma-client-js"
8
}
9
model Post {
10
id        Int @id
11
@default(autoincrement())
12
content   String?
13
published Boolean @default(false)
14
authorId  Int?
15
}

A multiplayer game

where your code is
the controller.

All you need is a web server that responds to the Battlesnake API.

Controlled by a web server you build, and the code you write,
Battlesnakes move to find food, avoid others, and stay alive.

Chose Your Stack.
Outlast Your Peers.

Compete in Leagues and see how your code stacks up against other developers. Compete for prizes and bragging rights.
VIEW DOCS

Only As Complex
As You Make it.

Anyone with beginner-level coding knowledge can have fun with Battlesnake. The ability to increase its complexity is endless.

What strategies will you use? Min–max? Flood filling? Path finding? Machine Learning?
It’s dealer's choice.

An Open–Ended
Playground for Web Devs

Mess around with that new language you’ve been thinking about. Try that algorithm you heard about on a recent podcast.

Battlesnake is your outlet to learn and try something new.
Performance Matters
With only 500ms to make a move, you’ll be pushed to write performant code.
Open Source Game Engine
Collaborate with others. Many choose to open source their Battlesnakes.
Host your Own Tournaments
Run a team-building event, use Battlesnake in your classrooms, or create tournaments for your friends.
Request access.
Get Started Quickly

Starter Templates make it fast and easy to deploy a Battlesnake.
View Docs

Why developers keep playing.

"Competitive programming sucks. Like actual, CS term competitive programming. I went to a few competitions. And it's just boring in comparison.

With Battlesnake is just so much more fun. There's the visual aspect to it as well. And it requires you to do real engineering things to make it happen."
"It’s very approachable from someone, regardless of your skill level, because it can get as complicated as you make it."
"As an engineer, I have the desire to stay current on whatever it is. Day-to-day, I don’t get as much hands-on programming, I’m doing more architecture. I want to help myself level up in a safe space. I can even make my code public. "
"The part that really hooks me is the reverse API thing. Where the Battlesnake engine calls your server. It's unlike other types of games where you upload code to somebody else, they run it and you’re always restricted, having to structure your code in a certain way or use a certain language. 

Whereas it calling a server that you host, leaves it completely open-ended to how you implement it."
"I had to learn PowerShell for work, and I was like, "I'm going to use Battlesnake to learn PowerShell". So I wrote a PowerShell starter snake. And yeah, it's just a great, a great, primer to learn stuff."
"I had to learn PowerShell for work, and I was like, "I'm going to use Battlesnake to learn PowerShell". So I wrote a PowerShell starter snake. And yeah, it's just a great, a great, primer to learn stuff."
"It's almost like a sandbox. You can use it to learn a new language if you want, that's very approachable. Or you could take the language you know, do very well, and add other things around it. Deploy it, CICD, whatever you need to do."
"It’s fun, because you can actually see it in action. There’s so many things you can do with it, because it’s so open-ended."
Mine's a heuristics snake. It's not doing tree search or anything like that. So it's interesting to see people adopting that strategy, because obviously it's the winning strategy. It's interesting to see how far I can get without doing that. And competing with computers because there's a lot of funky logic in my snake. It's just interesting to see how far it gets.
Battlesnake is a
Global Community
This is some text inside of a div block.
This is some text inside of a div block.