So you want to use 8 Square
I ran into this while helping a colleague map out a small grid layout for a warehouse inventory system. The tool itself isn't complicated, but getting it to behave the way you expect takes a bit of patience. Here is how to actually get it working without wasting half a day. 8 Square is a grid-based layout and calculation tool. You define a rectangular area divided into equal sections, then assign values, dimensions, or resources to each cell. It's used mostly for spatial planning, resource distribution, and basic combinatorial math. The interface is minimal — a grid editor on the left, parameter controls on the right, and a results panel below. There is no app store listing or fancy landing page. You find it through forums and GitHub. The current version is v0.9.3, and it runs on Python 3.9 or higher. No neural network, no subscription, no account required. You download it, install the dependencies, and run it locally.
Installation and setup
Clone the repository from the usual sources, then run pip install -r requirements.txt. The dependencies are light — mostly numpy, matplotlib, and a couple of utility packages. If you're on Windows, make sure your Python installation includes the Tcl/Tk libraries, or the UI window won't render. I learned that the hard way on a fresh Windows 11 machine. Installing the full Tkinter package fixed it in about three minutes. After installation, launch it with python -m eight_square. The first screen you'll see is the grid editor. Default grid size is 8x8, which is where the name comes from, but you can resize it freely. Width and height accept any integer from 1 to 100. Beyond 20x20 and you start noticing frame drops on older hardware.
Basic workflow
Click a cell to select it. Press number keys to assign values, or right-click and type a custom label. The bottom panel updates in real time with totals, averages, and distribution stats. If you're doing resource allocation, the tool will highlight cells that push your totals past a threshold you set in the parameters panel. I use the threshold feature constantly — it saves you from manually scanning a 40-cell grid looking for outliers. Export options are CSV, JSON, and PNG. The PNG export includes a border and axis labels, which is useful if you need to drop an image into a report. CSV is flat — one row per cell with x, y, value, and label columns. Nothing fancy.
Get the Full Details

Common pitfalls and the workaround I use
The biggest issue I've hit is that the grid doesn't auto-save between sessions. If the program crashes or you close it accidentally, your work is gone. There's no autosave flag in the settings. My workaround is simple: I keep a second instance open with a blank grid and hit the export button after every meaningful change. It adds about ten seconds to the workflow but prevents losing hours of setup. I've also started using a bash script that exports the CSV every 5 minutes while the program is running. It's not elegant, but it works. Another thing beginners miss: the tool treats empty cells as zero by default in calculations, but they still count toward cell totals in distribution ratios. If you're building a model where some cells should be excluded entirely, you need to mark them as null using the right-click context menu. Empty and null are not the same thing in this program, and confusing the two will throw off your percentages by a noticeable margin.
When 8 Square falls short
It is not designed for anything beyond simple 2D grids. If you need three-dimensional layout planning, look elsewhere — something like a dedicated CAD tool or a spatial analysis library. The tool also has no support for conditional formatting beyond the threshold highlighter. You can't color-code cells based on ranges, patterns, or external data inputs. For basic warehouse mapping or classroom seating charts, it's fine. For anything that requires dynamic styling or live data feeds, it will frustrate you quickly. Performance degrades noticeably past 50x50 grids. The rendering loop isn't optimized, and you'll see 200-300ms delays on cell clicks. If you know you'll be working with large grids regularly, consider writing a small wrapper script that batches your cell assignments instead of clicking through them one by one. A loop that assigns values programmatically runs in under a second for 100x100.
Where to find it
The repository is at github.com/eight-square/eight-square. The releases page has pre-built binaries for Windows and macOS, so you don't need to compile anything yourself unless you're on Linux. The README is sparse but accurate. There is a small community Discord linked in the repo, but activity is low — maybe a few posts per week. Most troubleshooting happens through GitHub issues. If you're just starting out with grid-based planning and don't need advanced features, 8 Square covers the basics without overhead. If your needs go beyond that, you'll outgrow it within a month or two. That's fair. Not everything has to be a permanent solution.
