PHPackages                             frnxstd/sudoxu - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. frnxstd/sudoxu

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

frnxstd/sudoxu
==============

Sudoxu is a simple sudoku creator class

v1.0(8y ago)413MITPHPPHP &gt;=5.3CI passing

Since Jan 25Pushed 3w ago2 watchersCompare

[ Source](https://github.com/ikidnapmyself/sudoxu)[ Packagist](https://packagist.org/packages/frnxstd/sudoxu)[ Docs](http://sudoxu.com)[ RSS](/packages/frnxstd-sudoxu/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (2)DependenciesVersions (2)Used By (0)

Sudoxu
======

[](#sudoxu)

A simple, headless sudoku grid generator for PHP. It produces a fully-solved grid of a configurable (perfect-square) size, returned as an array, JSON, or a serialized string.

Requirements
------------

[](#requirements)

- PHP 8.1+

Installation
------------

[](#installation)

```
composer require ikidnapmyself/sudoxu

```

Usage
-----

[](#usage)

```
use Sudoxu\Sudoku;

$sudoku = new Sudoku();          // default 9x9

$json  = $sudoku->generate('json');       // JSON string
$array = $sudoku->generate('array');      // array
$ser   = $sudoku->generate('serialize');  // serialized string
```

Each call returns the grid plus metadata:

```
[
    'sudoku' => [ /* flat array, index = row * size + col */ ],
    'limit'  => 9,
    'result' => ['created_in' => 0.02, 'timestamp' => 1721480000, 'difficulty' => 'N/A'],
]
```

### Other sizes

[](#other-sizes)

The size must be a perfect square between 1 and 36 (4, 9, 16, 25, 36):

```
$mini = (new Sudoku(4))->generate('array');

// or change size on an existing instance
$big  = (new Sudoku())->set(16)->generate('array');
```

An unsupported size throws an `InvalidArgumentException`.

> **Note:** Larger grids (16x16 and up) are CPU- and memory-heavy. Unlike older versions, the library no longer changes `memory_limit` or the time limit for you — raise them in your own application if a large grid needs it.

License
-------

[](#license)

MIT

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance62

Regular maintenance activity

Popularity9

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3123d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/13779866?v=4)[Burak](/maintainers/ikidnapmyself)[@ikidnapmyself](https://github.com/ikidnapmyself)

---

Top Contributors

[![ikidnapmyself](https://avatars.githubusercontent.com/u/13779866?v=4)](https://github.com/ikidnapmyself "ikidnapmyself (28 commits)")

---

Tags

phpsudoku

### Embed Badge

![Health badge](/badges/frnxstd-sudoxu/health.svg)

```
[![Health](https://phpackages.com/badges/frnxstd-sudoxu/health.svg)](https://phpackages.com/packages/frnxstd-sudoxu)
```

###  Alternatives

[tremby/laravel-git-version

A helper to get the current git version of the application

63678.4k3](/packages/tremby-laravel-git-version)[data-values/data-values

Defines the DataValue interface and some trivial implementations

201.1M25](/packages/data-values-data-values)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
