Skip to content

Offline application that allows you to play Launchpad covers from anywhere, directly from your web browser.

License

Notifications You must be signed in to change notification settings

lpadder/lpadder

Repository files navigation

lpadder: Build your next cover with lpadder.

GitHub - Social Banner



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.

Explaining the "lpadder project file structure"

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.

Development

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: Starts solid-start development server on port 3000.
    • 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 is 3000.
  • pnpm build: Lints and builds the app.
  • pnpm lint: Runs eslint and tsc.
  • pnpm release: Runs pnpm lint, bumps the version in package.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.

If you want to contribute, please check the roadmap.

Credits