[{"data":1,"prerenderedAt":53},["ShallowReactive",2],{"project-game-of-life":3},{"id":4,"title":5,"body":6,"description":12,"extension":23,"heroImages":24,"highlights":27,"meta":37,"navigation":38,"overview":39,"path":40,"role":41,"seo":42,"stack":43,"stem":48,"tagline":49,"type":50,"year":51,"__hash__":52},"projects\u002Fprojects\u002Fgame-of-life.md","Conway's Game of Life Simulator",{"type":7,"value":8,"toc":19},"minimark",[9,13,16],[10,11,12],"p",{},"A Game of Life I made with JavaFX. You get a grid of cells and some buttons: Play (it becomes Pause), Increment to do one generation, Clear, and Randomize to fill the board with random cells. A speed choice (Slow, Medium, Fast) changes the time between two generations, and a counter shows the generation number.",[10,14,15],{},"The rules are the 4 classic ones. A live cell with fewer than 2 or more than 3 neighbors dies, a live cell with 2 or 3 neighbors stays alive, and a dead cell with exactly 3 neighbors becomes alive. The edges of the board are walls, there is no wrapping. Each cell has an age, and the color changes when a cell survives more than one generation, so you can see what is new and what is stable.",[10,17,18],{},"I wrote unit tests with JUnit for the board, the cells, the directions and the states. There is also an INFECTED state in the code, with its own color, but I didn't do the logic for it yet.",{"title":20,"searchDepth":21,"depth":21,"links":22},"",2,[],"md",[25,26],"\u002Fresources\u002Fimg\u002Fgame-of-life\u002Fsimulation.png","\u002Fresources\u002Fimg\u002Fgame-of-life\u002Fevolution.png",[28,31,34],{"title":29,"description":30},"Age of the cells","The color of a live cell changes when it survives more than one generation.",{"title":32,"description":33},"Unit tests","The board, the cells, the directions and the states are tested with JUnit.",{"title":35,"description":36},"Infection","There is an INFECTED state in the code with its own color, but the logic is still a TODO.",{},true,"A Game of Life with a JavaFX interface: a grid of cells, play and pause, step by step, random start and three speeds.","\u002Fprojects\u002Fgame-of-life","Developer",{"title":5,"description":12},[44,45,46,47],"Java","JavaFX","Maven","JUnit","projects\u002Fgame-of-life","Conway's Game of Life made with JavaFX.","Personal",2024,"c8kuPEBMITXDAwF241VjwqAGNRzvN-JbG2OihtRckN4",1792408577403]