Skip to main content

A lightweight Python SDK for 2D hypercasual and hybrid-casual mobile game prototypes.

Project description

GameViz HyperKit

GameViz HyperKit is a lightweight Python SDK for creating 2D hypercasual and hybrid casual game prototypes quickly.

It is designed for beginners, students, game jam developers, indie developers, and small teams who want to test simple mobile-style game ideas using Python.

HyperKit is not a full game engine like Unity, Unreal, or Godot.
It is a prototype-focused SDK with reusable systems, helper modules, and ready-made templates.


Current Release Status

HyperKit is currently in active development.

Current package validation status:

  • TestPyPI validation build: 0.1.1.dev1
  • Real PyPI release: not published yet
  • Stable public release target: future 1.0.0

For now, HyperKit should be considered an early SDK preview.


Package Identity

  • Package name: gameviz-hyperkit
  • Import name: hyperkit
  • CLI command: hyperkit

Who Is HyperKit For?

HyperKit is useful for:

  • learning 2D game development with Python
  • building quick hypercasual game prototypes
  • creating tap, swipe, runner, puzzle, quiz, and physics-style demos
  • testing simple game ideas before moving to a larger engine
  • students and indie developers who want a small code-first game toolkit

Main Features

  • 2D game project structure
  • Scene system
  • GameObject system
  • Tap/click input
  • Swipe input
  • Score and high-score system
  • Save system
  • Collision helpers
  • Simple physics helpers
  • Text label and basic UI helpers
  • Responsive virtual canvas scaling
  • Asset loading helpers
  • Image rendering support
  • Audio playback helpers
  • Animation helpers
  • Sprite animation helper
  • Particle helper
  • Camera shake helper
  • Scene transition helper
  • Timer and cooldown helpers
  • Input action mapping helper
  • Level data loading helper
  • Camera follow helper
  • Screen bounds and world bounds helpers
  • UI progress bar helper
  • CLI project generator
  • Ready-made starter templates
  • Project health and release validation commands

Installation

For local development from the repository:

pip install -e .

Check that HyperKit is working:

hyperkit doctor

Install the current TestPyPI validation build:

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ gameviz-hyperkit==0.1.1.dev1

Quick Start

Create a new game project:

hyperkit new my-game --template tap_counter
cd my-game
python main.py

You can also use dash-style template names:

hyperkit new my-game --template tap-counter

Generated projects include:

my-game/
├── main.py
├── README.md
├── hyperkit.toml
└── assets/
    ├── README.md
    ├── images/
    ├── audio/
    ├── fonts/
    └── data/

Available Templates

Check all templates:

hyperkit list-templates

Current templates:

Template Command Name Description
Tap Counter tap_counter / tap-counter Tap/click scoring prototype
Flappy Mini flappy_mini / flappy-mini Flappy-style tap-to-jump prototype
Swipe Runner swipe_runner / swipe-runner 3-lane swipe runner prototype
Puzzle Game puzzle_game / puzzle-game Color matching puzzle prototype
Quiz Game quiz_game / quiz-game Educational quiz game prototype
Simple Physics simple_physics / simple-physics Gravity, bounce, and coin collection prototype

Basic Example

from hyperkit import Game, GameObject, Scene, ScoreManager, TextLabel


class MyScene(Scene):
    def start(self):
        self.score = ScoreManager(high_score_key="my_game_high_score")

        self.player = self.add(
            GameObject(
                x=300,
                y=500,
                width=100,
                height=100,
                color=(0.2, 0.75, 1.0, 1),
                shape="circle",
            )
        )

        self.score_label = self.add(
            TextLabel(
                x=30,
                y=1180,
                text="Score: 0",
                font_size=32,
                color=(1, 1, 1, 1),
            )
        )

        self.start_game()

    def on_tap(self, x, y):
        self.player.x = x - self.player.width / 2
        self.player.y = y - self.player.height / 2
        self.score.add(1)
        self.score_label.set_text(f"Score: {self.score.value}")


Game(title="My HyperKit Game", width=720, height=1280).set_scene(MyScene()).run()

Asset Folders

HyperKit projects use a simple asset structure:

assets/
├── images/
├── audio/
├── fonts/
└── data/

Supported asset types:

Folder Supported Types
assets/images .png, .jpg, .jpeg, .webp
assets/audio .wav, .mp3, .ogg
assets/fonts .ttf, .otf
assets/data .json, .csv, .txt

FBX is not directly supported in HyperKit.
For 2D games, export FBX source assets as PNG images, animation frames, or sprite sheets.


CLI Commands

Check environment:

hyperkit doctor

Show templates:

hyperkit list-templates

Create a new project:

hyperkit new my-game --template tap_counter

Run a project:

hyperkit run

Show project metadata:

hyperkit info

Validate a generated project:

hyperkit validate

Show package health report:

hyperkit health

Show release readiness report:

hyperkit release-check

Show final pre-release audit report:

hyperkit pre-release-audit

Create experimental Android build configuration:

hyperkit init-android

Run experimental Android build:

hyperkit build android

Validate built-in templates:

hyperkit validate-templates

Validate generated projects for all polished templates:

hyperkit validate-generated-projects

Validate the runtime QA tracker and evidence structure:

hyperkit validate-release-evidence

Development Commands

Run tests:

pytest

Build package:

python -m build

Check package:

twine check dist/*

Upload to TestPyPI:

python -m twine upload --repository testpypi dist/*

Documentation


Current Limitations

  • HyperKit is not a full game engine.
  • Advanced 3D rendering is not supported.
  • Android APK build support is still experimental.
  • AdMob and analytics helpers are not implemented yet.
  • The current focus is 2D hypercasual and hybrid casual prototypes.
  • Templates are designed for learning and prototyping, not final commercial production yet.

Roadmap

Planned improvements:

  • better beginner documentation
  • more polished starter templates
  • template screenshots and GIFs
  • improved CLI error messages
  • stronger asset and audio workflow
  • mobile-friendly project structure
  • Android build workflow improvements
  • AdMob and analytics helper layer
  • more complete example games
  • future stable 1.0.0 release

License

MIT License.


Author

Developed by Md. Rifat Hossain Chowdhury / GameViz.

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

gameviz_hyperkit-0.1.1.tar.gz (84.7 kB view details)

Uploaded Source

Built Distribution

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

gameviz_hyperkit-0.1.1-py3-none-any.whl (77.6 kB view details)

Uploaded Python 3

File details

Details for the file gameviz_hyperkit-0.1.1.tar.gz.

File metadata

  • Download URL: gameviz_hyperkit-0.1.1.tar.gz
  • Upload date:
  • Size: 84.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for gameviz_hyperkit-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4a91c9c021ea46dde504e98d906852decf25502750ca96cb289fd2d0f0f6c62f
MD5 99895150302a1c280aa6703ec78153f5
BLAKE2b-256 6ff2c6ca2e8f94254f27f474c678dbd96d30b779efbdb98cc515ee63d830f4cf

See more details on using hashes here.

File details

Details for the file gameviz_hyperkit-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for gameviz_hyperkit-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9092c4bba4d0063e8371038d3c8a77575169f18fbb0768828124221e8bdb40e8
MD5 60be4ebb4272214be53e082013c56c96
BLAKE2b-256 7e83e2a824e0643d2c2454d988a038fcc57e12a571264b4ac0e27e5d0324b699

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