lpadder
(pronounced el padder
or launchpadder
) is a web
application - still in development - that lets you play Launchpad covers directly from your web browser.
In the future, mini-games will be available.
This is currently a work in progress. You can still preview the latest release version by going to https://lpadder.vercel.app.
If you have any idea of feature to add, head on the issues and
create a new issue with the feature request
template.
Each covers is bundled into a .zip
file that contains a single cover.json
file.
This file contains the project's global configuration and data.
You can see its interface (ProjectStructure
) in the Project.ts
file.
lpadder was made using Vite, SolidJS, solid-start, TypeScript and WindiCSS. Deployment is powered by Vercel. pnpm is the main package manager. Finally, MongoDB Atlas is used to host the main database.
pnpm dev
: Startssolid-start
development server on port3000
.- Note: if you use a reverse proxy to access the development server, you'll need to change the
CLIENT_PORT
environment variable in.env.local
- a sample is available under.env.sample
. The default value is3000
.
- Note: if you use a reverse proxy to access the development server, you'll need to change the
pnpm build
: Lints and builds the app.pnpm lint
: Runseslint
andtsc
.pnpm release
: Runspnpm lint
, bumps theversion
inpackage.json
, commits the changes and tag, then creates a GitHub Release.- Note: the published GitHub release will trigger a GitHub Action that will run a Vercel build. On successful deploy, it will update the published GitHub Release and append
Deployment URL: <VERCEL_DEPLOY_URL>\n\n
at the top of the release body.
- Note: the published GitHub release will trigger a GitHub Action that will run a Vercel build. On successful deploy, it will update the published GitHub Release and append
If you want to contribute, please check the roadmap.
- mat1jaczyyy, for the LP-Firmware-Utility where a lot of device identification code has been taken.
- Novation for the Launchpads and their programmer documentations.