Skip to main content

No project description provided

Project description

PyPI PyPI - Downloads Checks Coverage code size, bytes GitHub commit activity GitHub closed pull requests

Maze Dataset

Generation, solving and processing of various mazes. Primarily build for the maze-transformer project, which this repo is an offshoot of.

Maze generated via percolation Maze generated via constrained randomized depth first search Maze with random heatmap MazePlot with solution

Installation

pip install maze-dataset

You can run all tests via

make test

(this will take a few minutes)

Usage

Most of the functionality is demonstrated in the ipython notebooks in the notebooks/ folder.

  • demo_dataset.ipynb how to easily create a dataset of mazes, utilities for filtering the generates mazes via properties, and basic visualization
  • demo_latticemaze.ipynb internals of the LatticeMaze and SolvedMaze objects, and advanced visualization

Development

Prerequisites

  • Install Poetry

  • Install Python 3.10

    • It's a good idea to use pyenv to manage python versions
    • If using pyenv, you'll need to update your Poetry config for it to use the pyenv Python version: poetry config virtualenvs.prefer-active-python true
  • Install dev dependencies

    poetry config virtualenvs.in-project true
    poetry install --with dev
    
  • Run unit, integration, and notebook tests

    make test
    
  • (Optional) If you want to work with the jupyter notebooks in VSCode

    • create a jupyter kernel with poetry run ipython kernel install --user --name=maze-dataset
    • Restart VSCode
    • In VSCode, select the python interpreter located in maze-dataset/.venv/bin as your juptyer kernel

Testing & Static analysis

make help will print all available commands.

  • all tests via make test

    • unit tests via make unit
    • notebook tests via make test_notebooks
  • formatter (black, pycln, and isort) via make format

    • formatter in check-only mode via make check-format

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maze_dataset-0.3.6.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

maze_dataset-0.3.6-py3-none-any.whl (51.5 kB view details)

Uploaded Python 3

File details

Details for the file maze_dataset-0.3.6.tar.gz.

File metadata

  • Download URL: maze_dataset-0.3.6.tar.gz
  • Upload date:
  • Size: 43.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.1

File hashes

Hashes for maze_dataset-0.3.6.tar.gz
Algorithm Hash digest
SHA256 d7928b2ad654e46bf7acc58c96bd4852f13a97a519735af153de06bccd9f70e2
MD5 2d10a05d6ea403cbea4e878f025e73d7
BLAKE2b-256 36c7235d12574761ba32a8021472c6cda9e2f7be35f294d764ac861779bff15b

See more details on using hashes here.

File details

Details for the file maze_dataset-0.3.6-py3-none-any.whl.

File metadata

  • Download URL: maze_dataset-0.3.6-py3-none-any.whl
  • Upload date:
  • Size: 51.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.1

File hashes

Hashes for maze_dataset-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 989e8f32525b762e79ea4accf537663c4cfe25a5549b12aa295783b3eea7abf3
MD5 c58824446f1f5e82f7c628a96e6804b7
BLAKE2b-256 0a596eb0bbe9ab1b274723899ed6ca99cc155dde8e99fc8fc87fd12a1f48c69e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page