Graph representation and tools for programming with pentagame
Project description
pentagraph
Graph representation and tools for programming with pentagame. This is in active development an will be fully functional with the 0.0.1 release
Setup
Pip
You will need a working instance of pip.
python3 -m pip install pentagraph
Development
Clone from github (requires git): git clone https://github.com/Penta-Game/pentagraph
To install the basic dependencies you can use pip
: python3 -m pip install -r requirements.txt
I highly recommend using a virtualenv for developing purposes.
License
The source code of pentagraph is distributed according to the MIT License by Cobalt
Libraries as listed in requirements.txt
please consider their respective Licenses before e.g. making commercial use of pentagraph
.
The same applies for materialize and svg.js.
Development Notes
Contributing and CI
There are 2 github actions workflows. The Python Packge
workflow is called on each push & merged pull request. This workflow runs test against the new version (pytest tests/
) and checks if files in pentagraph/
could be formatted with black. If either files could be formatted, the tests fail or the requirements are broken, the run fails. For black errors format.py
can recursively execute black against all files in pentagraph/
(you need to install black before using this). As an alternative python -m black . --target-version py38
would be an appropriate direct call.
The other workflow releases a new pip package on each github release. This release oriented workflow takes advantage of twine and github repository specific secrets. When this workflow crashes with authentication related errors contact Cobalt.
pentagraph.lib.graphic
An easy-to-use way of displaying the Board
taking advantage of Flask in combination with materialize, svg.js. The final board svg is created with a variation of resources from boardgame.
pentagraph.lib.figures
Collection of Objects used for figure representation. These Objects also specifiy their respective drawing methods and types.
pentagraph.lib.graph
Graph representation as Board
Object.
pentagraph.lib.math
Math usable for graphic representation of pentagame board. Python version of math used in pentagraph.lib.graphic
.
pentagraph.ml
Reserved space for machine learning with pentagame graphs. Will in the future require tensorflow, gym and other libraries.
Docs
Docs are generated using pelican. materialize is actively used.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pentagraph-0.0.1b4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1e709966c7ea393df89b9e899c4a13c65831fb1f941ac02c10bd39efb479858 |
|
MD5 | 615cbc212f6e1cb32ac0261ac686a5b1 |
|
BLAKE2b-256 | 7d0e92e7866eefb72e96b843b9ce89b34c91bd7d80f7b21b62a12146eff33d94 |