Package: pypercard
PyperCard - A Pythonic HyperCard for Beginner ProgrammersView this repositoryvia GitHub pages.This project's documentation can be foundhere.This project started in 2019 as a re-implementation ofAdafruit's CircuitPython PYOAmodule, but for non-CircuitPython computing environments. It was originally
written using theKivyframework for cross-platform
development. After successfully testing PyperCard for teaching and learning
purposes with the wonderfulyoung folkat the LondonYoung Coders' Meetup, development stalled because
of the COVID pandemic.However, PyperCard is back in active developmentwith some significant
changes:PyScriptreplaces Kivy as the underlying
cross-platform framework for generating and running the user interface.Nicholas, the original developer and maintainer
of PyperCard, has been hired byAnaconda Incto work
on PyScript, and so his work on this project is sponsored by his employer
(hence the copyright changes).Ownership of the repository has been transferred to thepyscript organisationon GitHub (the old
repository will automatically redirect to the new one).Since this is a complete rewrite, the license has been changed from MIT
to Apache2.All the assets relating to the old version of the project can still be found
in theold branchin this
repository.Developer setupGit clone the repository:git clone https://github.com/ntoll/pypercard.git(Recommended) Upgrade local pip:pip install --upgrade pipMake a virtualenv, then install the requirements:pip install -r requirements.txtMost useful developer related tasks are automated by aMakefile:$ make
There's no default Makefile target right now. Try:

make clean - reset the project and remove auto-generated assets.
make tidy - tidy up the code with the 'black' formatter.
make lint - check the code for obvious errors with flake8.
make lint-all - check all code for obvious errors with flake8.
make serve - serve the project at: http://0.0.0.0:8000/
make test - while serving the app, run the test suite in browser.
make docs - use Sphinx to create project documentation.
make dist - build the module as a package.
make publish-test - upload the package to the PyPI test instance.
make publish-live - upload the package to the PyPI LIVE instance.To run the test suite:$ make serveThen visithttp://localhost:8000/and click the "Run the test
suite" button, or, in another console with the code still serving,make test.The tests should open in your browser, and pass. ;-)Please use a width of 79 characters for source code files.Example applicationsSeveral example applications, demonstrating various different aspects of
PyperCard can be found in theexamplessubdirectory of this repository.They are, in order of complexity (simple first):hello- it displays "Hello, world!" with PyperCard.hello interactive- a simple interactive application that prompts users to
enter their name, and click a button for a friendly greeting.temperatures- convert between celsius and fahrenheit, whilst handling
errors.card carousel- a demonstration of automatic advance to the next card
after N seconds.loosey goosey- a goose based honking-as-a-service application to
demonstrate PyperCard's audio capabilities.turner- use the background properties of cards to display full screen
images of some of Turner's paintings, to the music of Bach.calculator- a simple calculator demonstrating a recursive single card
app.alchemyst- an atmospheric point and click adventure game in the style of
the classic Myst (built using the original HyperCard).