Win a $250 Gift Card: Build Conway’s Game of Life With GraphQL for AuraDB Beta

Senior Product Manager, Neo4j
3 min read

We’re inviting developers to participate in an exciting competition to test GraphQL for Neo4j AuraDB in its pre-release beta phase. Your participation will help us refine the technology before its official launch, and as a thank you for your time and effort, we’re offering a $250 gift card and a Neo4j t-shirt to the winner!
Why Conway’s Game of Life?
If you’re not familiar with Conway’s Game of Life, or even if you are, you may be wondering why it’s relevant here.
Let’s rewind to October 1970 and the Mathematical Games column in Scientific American, where John Conway introduced this fascinating cellular automaton. The game follows simple rules but creates complex, evolving patterns that can simulate real-world systems.
The rules of the game:
1. Start with a grid (e.g., 10×10).
2. Each cell is either live or dead in the first generation.
3. Apply the following rules to determine the next generation:
— A live cell with fewer than two live neighbors dies (loneliness).
— A live cell with two or three live neighbors survives.
— A live cell with more than three live neighbors dies (overcrowding).
— A dead cell with exactly three live neighbors becomes alive (reproduction).
Each new generation is a function of the previous one, leading to fascinating patterns — some of which grow infinitely, while others stabilize or vanish.
Why Use GraphQL and Neo4j for This?
Fast-forward to today, and we can recognize that Conway’s Game of Life is inherently a graph: a structure of nodes (cells) and relationships (adjacent cells).
This makes Neo4j, a graph database, a perfect fit for storing and computing game states. GraphQL, which naturally handles complex relationships and flexible queries, further enhances the experience. And with a browser-based UI, we create a modern, performant, and interactive experience.
The Challenge
We challenge you to build Conway’s Game of Life using GraphQL for Neo4j AuraDB Beta with Neo4j AuraDB with an intuitive browser UI. The best implementation will win!
What You’ll Learn in the Tutorial Series
To support you, we’ll provide a tutorial series covering:
– Setting up GraphQL for AuraDB
– Defining the schema and writing custom Cypher queries
– Creating an interactive UI in a browser
Competition Requirements
Your submission must:
✔ Comply with the Rules.
✔ Use Neo4j AuraDB as the back-end database (sign up for Aura and choose a free 14-day Aura Professional Trial, extendable for seven extra days).
✔ Communicate via GraphQL for Neo4j AuraDB Beta.
✔ Meet the functional scope outlined below.
✔ Be open source (GNU General Public License v3.0) and hosted on GitHub.
✔ Include a README.md with installation and usage instructions.
Functional Scope
Game Setup:
- Runs in Chrome or Firefox.
- Players select grid size (10×10 min, 100×100 max) — after which the grid is shown with all cells ‘dead’.
- From the grid, players must set a number of cells to be ‘live’.
- Players enter the number of generations (up to and including 100).
- This initial grid state is stored in Neo4j.
- Game can now be started.
Game Execution:
- The game follows Conway’s rules to compute each new generation with the new state of the grid stored in Neo4j.
- The new state is retrieved from Neo4j and displayed in the UI.
- Players can stop, restart, or modify settings.
Game End Conditions:
- The game stops after the maximum number of generations is reached.
- Players can reset and start again with new settings.
How to Enter
Once your project is complete:
- Upload your code to GitHub and make sure to use the GNU General Public License v3.0.
- Include a README.md explaining the setup and execution.
- Email your GitHub repository link to jon.giffard@neo4j.com.
Submission Deadline:
? March 31, 2025 (5 p.m. GMT)
? Winner announced by April 30, 2025
Get Started Today
This is your chance to experiment with GraphQL for Neo4j AuraDB Beta, showcase your skills, and win great prizes! ?
Have questions? Feel free to reach out. We can’t wait to see what you build!
Compete for a $250 Gift Card by Building Conway’s Game of Life With GraphQL for… was originally published in Neo4j Developer Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.