Skip to content

jakubvalenta/tessellation

Repository files navigation

Tessellation

A web app to arrange tiles according to specified rules.

Tessellation allows you to upload square images and define how they connect. The app will then try to arrange the tiles into a larger composition adhering to the connection rules. This is similar to the Wang tiles problem.

Tessellation screenshot

Installation

Mac

$ brew install poetry yarn
$ make setup

Arch Linux

# pacman -S python-poetry yarn
$ make setup

Other systems

Install these dependencies manually:

  • Python >= 3.8
  • yarn
  • poetry

Then run:

$ make setup

Usage

Start a development server

$ make run
$ make frontend

Create database:

$ make create-db

Create database tables, superuser, and populate the db with fixtures:

$ make migrate create-superuser populate-db

Start a development server with production settings.

Dependencies:

  • pwgen
$ make run-prod

Development

Testing and linting

make test
make lint

Help

make help

Contributing

Feel free to remix this project under the terms of the GNU General Public License version 3 or later. See COPYING and NOTICE.