Skip to main content

♟️ Ultimate tic-tac-toe game GUI application using Python and PyGame

Project description

Ultimate tic-tac-toe

♟️ Ultimate tic-tac-toe game GUI application using Python and PyGame

🎨 Has a GUI!
🤖 Uses GitHub Actions to produce PyInstaller binaries
🏫 Made for UW-Whitewater Introduction to Python Programming final project
🧠 Learned about uv

Installation

GitHub PyPI

The best way to install this application is to download the platform-specific precompiled binary from the latest release.

Windows x86-64
https://github.com/jcbhmr/ultttt/releases/download/v1.0.0/ultttt-win_amd64-1.0.0.zip
macOS x86-64
https://github.com/jcbhmr/ultttt/releases/download/v1.0.0/ultttt-macosx_10_9_x86_64-1.0.0.tar.gz
macOS AArch64
https://github.com/jcbhmr/ultttt/releases/download/v1.0.0/ultttt-macosx_11_0_arm64-1.0.0.tar.gz
Linux x86-64
https://github.com/jcbhmr/ultttt/releases/download/v1.0.0/ultttt-linux_x86_64-1.0.0.tar.gz

This package is also published to PyPI if you prefer to install it from there:

uv tool install ultttt

Development

Python uv

This project uses uv as its Python toolchain. Why uv and not Poetry or something else? Because uv unifies everything including installing the right Python version. uv is not a task runner yet and as such we use Poe the Poet to define our tasks.

The most interesting thing to do is build the ultttt executable binary using PyInstaller:

uv run poe build-exe

Release process:

  1. Change the version in pyproject.toml
  2. Change the URLs in the readme to match the new version that you are about to release
  3. Run the release workflow manually
  4. Make sure it looks good
  5. Publish the release to trigger the PyPI release workflow
  6. Make sure that works and you're done! 🎉

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

ultttt-1.0.0.tar.gz (141.4 kB view details)

Uploaded Source

Built Distribution

ultttt-1.0.0-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file ultttt-1.0.0.tar.gz.

File metadata

  • Download URL: ultttt-1.0.0.tar.gz
  • Upload date:
  • Size: 141.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ultttt-1.0.0.tar.gz
Algorithm Hash digest
SHA256 bf269d8cf8064399dca29de0adc82b7281f173b5bede6a106441cfdfcc668988
MD5 444dce74ec52263a1476a5c92188d71e
BLAKE2b-256 ba6ca33970d7c76a8ed192b2dabc68b69f4bf0a39464e43bff4d00732173f0da

See more details on using hashes here.

Provenance

The following attestation bundles were made for ultttt-1.0.0.tar.gz:

Publisher: python-publish.yml on jcbhmr/ultttt

Attestations:

File details

Details for the file ultttt-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ultttt-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ultttt-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5ab49452746267fd339fac49ea93fb4867d9d46553558a794d2b3aa6612b72d8
MD5 474e0f09f162a3b7d235a55b743de33c
BLAKE2b-256 59f65b32f88481c2326b1153ed04e29159cbb0253241a9f5ee6325d316e8e362

See more details on using hashes here.

Provenance

The following attestation bundles were made for ultttt-1.0.0-py3-none-any.whl:

Publisher: python-publish.yml on jcbhmr/ultttt

Attestations:

Supported by

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