An open API service indexing awesome lists of open source software.

https://github.com/jakubvalenta/tessellation

a web app to arrange tiles according to specified rules
https://github.com/jakubvalenta/tessellation

arrange composition django generate graphics tessellation tiles wang wang-tiles

Last synced: about 1 month ago
JSON representation

a web app to arrange tiles according to specified rules

Awesome Lists containing this project

README

          

# 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](https://en.wikipedia.org/wiki/Wang_tile).

![Tessellation screenshot](./tessellation/static/img/tessellation-create.png)

## Installation

### Mac

```shell
$ brew install poetry yarn
$ make setup
```

### Arch Linux

```shell
# pacman -S python-poetry yarn
$ make setup
```

### Other systems

Install these dependencies manually:

- Python >= 3.10
- yarn
- poetry

Then run:

```shell
$ make setup
```

## Usage

Start a development server

```shell
$ make run
$ make frontend
```

Create database:

```shell
$ make create-user
$ make create-db
```

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

```shell
$ make migrate create-superuser populate-db
```

Start a development server with production settings.

Dependencies:

- pwgen

```shell
$ make run-prod
```

## Development

### Testing and linting

```shell
make test
make lint
```

### Help

```shell
make help
```

## Contributing

__Feel free to remix this project__ under the terms of the GNU General Public
License version 3 or later. See [COPYING](./COPYING) and [NOTICE](./NOTICE).