PlayDate API

Mostly high-level rusty API for the Playdate handheld gaming system.

Usage with cargo-playdate is strongly recommended.

What's inside

Covered parts of API:

Plus some extensions to make it all more rust-ish.

Not yet covered parts:

Also there is no default entry-point (read as event-handler) for your application. Not yet, I'm working on it.

How to start

Currently there is no any beautiful HL examples ready yet. It will be in v0.2.0 or little bit earlier as well as default entry-point that mentioned above.

Prerequisites

Follow the instructions for: 1. SDK 1. cargo-playdate 1. playdate-sys (prerequisites only)

Hello World

Note, this is incomplete and not-so production-ready crate.

As minimum currently you'll need to implement missed entry-point for your program by yourself. But you can find some examples with ugly & primitive entry-point impl, so you'll need to add something like this code to your program.

Here is list of missed parts that not ready yet.

Short Way

  1. Install cargo-playdate.
  2. cd where/your/project/will/be
  3. cargo playdate init --lib --full-metadata --deps="playdate" (more about it)
  4. cargo playdate run

Done. Now take a look at long way below for details what's happen.

Alternative Way

Just run cargo new <your options> and add do following: 1. Add [playdate crate][playdate-crate] as dependency to your project 1. #![no_std] for library, or #![no_std] #![no_main] for executable binary 1. Look at existing example for api-parts like that 1. Add minimally required metadata to build package: - package.metadata.playdate.bundle-id = "com.yourcompany.game" - Read about playdate metadata format if needed 1. Install cargo-playdate to build your project 1. Run cargo playdate run 1. Help this project somehow.

❤️‍🔥


This software is not sponsored or supported by Panic.