A common repository to house all the great apps and games made by fellow vault-dwellers for the Pip-Boy 3000 Mk V device. Apps are hosted on pip-boy.com and are open-source for all to enjoy.
Purchase the device from the Bethesda store here. View the official upgrade site here.
This repository has been archived in favor of the new and
official Pip-Boy 3000 Mk V app loader from The Wand Company. If you would like
to create a new app to be hosted on Pip-Boy.com please
use the new repository below.
https://github.com/CodyTolene/pip-boy-apps
View Archived README
Install using the website Apps Inventory Page to start playing now, or install manually by following the guide here.
Feeling like a Vault-Tec engineer? If you’re interested in developing your own holotape-style apps, follow the development guide below to get started. Thanks for being part of the Wasteland's growing arcade!
[ Index ]
You can install and play apps directly from https://pip-boy.com/. Just connect to your PC using the website, upload, and start playing!
Apps and games will be available under the INV > APPS tabs on your Pip-Boy device once uploaded.
[ Index ]
To manually install the apps, you have a few options:
-
Download the releases from https://github.com/CodyTolene/pip-apps/tree/releases and upload them to your SD card directly.
-
If you need to install the bootloaer, you can use the https://codytolene.github.io/pip-apps website to upload the bootloader file to your Pip-Boy.
[ Index ]
To get started with development, you will need the following:
-
Node.js: https://nodejs.org/en/download/
-
An IDE, preferably Visual Studio Code: https://code.visualstudio.com/download
-
A bit of knowledge on how to use a terminal (you're a Vault-Tec engineer after all)
[ Index ]
To get set up for development, follow these steps:
-
Clone the repository.
-
Run
npm installin a new terminal at the root of this project, to install the project dependencies. -
Run
npm install -g espruinoto install the Espruino CLI globally for communicating with your device.
[ Index ]
Once you have the project and dependencies set up locally, you can start the app loader to test your apps and games. To do this, follow these steps:
-
Run
npm run startto start the loader app. This is the app you will use to rapidly upload and test your app. -
Open a browser and navigate to
http://localhost:3000if it doesn't open automatically. -
From here you can connect and upload your app files for quick testing.
The loader app is also available via GitHub Pages here https://codytolene.github.io/pip-apps
[ Index ]
Interested in learning how to develop apps for the Pip-Boy 3000 Mk V? Check out the excellent RobCo Industries Documentation for everything you need to get started.
For more information on developing bootloader apps, see the RobCo Industries Bootloader documentation.
Special thanks to @rikkuness for the hard work in providing and maintaining this amazing resource!
[ Index ]
To create a new app/game, follow these steps:
-
Create a new folder in the
appsdirectory. This folder should be namedapps/MyAppNamewhereMyAppNameis the name of your app. This folder will contain all the files and assets for your app. Be sure to use Pascal casing for the folder name. -
Add a package.json file to your app folder. This file should contain the following information:
Key Description titleThe name of your app. idA unique app id that also should match the .jsfile name.versionThe version of your app. descriptionA brief description of your app. authorThe author of the app. websiteThe website for your app, can be empty. contributorsThe contributors to your app, can be empty. metaMeta information for your app. controlsThe controls for your app, can be empty. instructionsInstructions for your app. tipA tip or trick for your app, can be empty. typeThe type of app, either "APP" or "GAME". pipFilesThe production ready files to be uploaded to the Pip. assetsThe assets for your app, can be empty. Uploads to ~USER/MyApp/.bootThe bootloader files to be uploaded to the Pip. Uploads to ~USER_BOOT/.modulesThe modules for your app, can be empty. Uploads to ~node_modules.userThe user files to be uploaded to the Pip. Uploads to ~USER/. -
Add your code using Git and push to a new branch.
-
Open a pull request to the
mainbranch. -
Wait for the pull request to be reviewed and merged.
Thank you for any and all contributions!
[ Index ]
To minify your app, you can use the npm run min command. This will start a
wizard that will guide you through the process of minifying your app.
- Select the file you want to minify from the
USERorUSER_BOOTdirectory using the up and down arrow keys. - Hit enter to select the file.
- This will output a file to the
USERorUSER_BOOTdirectory with the same name as the original file, but with a.min.jsextension. This is the minified version of your app. - If you get an error, fix up your files to be compatible with the Espruino minification.
You can also use the npm run min:watch command to watch for changes in your
chosen file and automatically minify it when you save. This is useful for rapid
development and testing.
Be sure to update the registry with your minified file name.
[ Index ]
.
├─ .github # GitHub configuration files.
├─ .husky # Husky configuration files.
├─ .vscode # VS Code configuration files.
├─ apps # The Pip-App Loader web app (GitHub Pages hosted)
│ ├─ <...> # User created app and game folders.
│ └─ CODEOWNERS # User created apps and games (entry file).
├─ docs # The Pip-App Loader web app (GitHub Pages hosted)
├─ node_modules # Node.js dependencies (ignored).
├─ .gitignore # Git ignore configuration file.
├─ .prettierignore # Prettier ignore configuration file.
├─ LICENSE.md # The project license file.
├─ package-lock.json # Node.js package lock file.
├─ package.json # Node.js package file.
├─ prettier.config.cjs # Prettier configuration file.
├─ README.md # The project README file.
└─ TERMS.md # The project terms of use file.
[ Index ]
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. See the license file for more information.
This project uses sounds found on FreeSound.org. The sounds are licensed under the Creative Commons 0 License. The list of sounds can be found below:
OOF.wavby tonsil5F_STEP.wavby MikeFozzy98F_STEP_2.wavby gobbe57
This project uses music from pixabay.com. This music uses a special license that allows for free use in personal and commercial projects. More information about this license can be found here: https://pixabay.com/service/license-summary/
SPDX-License-Identifiers: CC-BY-NC-4.0, CC0-1.0
By using this software, you acknowledge and agree to the terms of these licenses.
[ Index ]
Bethesda Softworks, LLC. The Wand Company, all trademarks, logos, and brand names are the property of their respective owners. This project is for personal use only and is not intended for commercial purposes. Use of any materials is at your own risk.
For more information, see the full Terms of Use document.
[ Index ]
Thank you to Bethesda & The Wand Company for such a fun device to tinker with! If you have any questions, please let me know by opening an issue here.
| Type | Info |
|---|---|
| webmaster@codytolene.com | |
| https://github.com/sponsors/CodyTolene | |
| https://www.buymeacoffee.com/codytolene | |
| bc1qfx3lvspkj0q077u3gnrnxqkqwyvcku2nml86wmudy7yf2u8edmqq0a5vnt |
Fin. Happy programming friend!
Cody Tolene