Skip to content

wpa-2/pwnagotchi-store

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

77 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ›’ PwnStore - The Unofficial Pwnagotchi App Store

Stop downloading massive ZIP files. PwnStore is a powerful plugin manager for Pwnagotchi that works both from the command line and through a mobile-friendly web interface. Browse, install, update, and manage plugins surgicallyโ€”downloading only the files you need.

CLI Version UI Version Gallery Python License


๐Ÿ“ฆ Three Ways to Use PwnStore

PwnStore gives you three different interfaces - use whichever fits your workflow:

๐Ÿ–ฅ๏ธ 1. CLI Tool (Command Line)

Perfect for SSH access and automation. The core engine that handles all plugin management.

  • Direct terminal control
  • Scriptable and automatable
  • Full debugging output
  • Works via SSH from anywhere

๐ŸŒ 2. Web UI Plugin (On-Device Browser Interface)

Perfect for mobile users and visual browsing. One-click installs from your phone or desktop browser.

  • Access at: http://<your-pwnagotchi-ip>/plugins/pwnstore_ui/
  • Touch-optimized interface
  • Real-time install/uninstall
  • No SSH required

๐ŸŒ 3. GitHub Pages Gallery (Public Web Catalog)

Perfect for browsing and discovering plugins before you install. View the full catalog online.

All three use the same plugin registry - consistent experience everywhere!

๐Ÿ“Š Quick Comparison

Feature CLI Tool Web UI Plugin GitHub Pages
Access SSH required Browser on device Any browser, anywhere
Install Plugins โœ… Yes โœ… Yes โŒ View only
Uninstall Plugins โœ… Yes โœ… Yes โŒ No
Browse Catalog โœ… Yes โœ… Yes โœ… Yes
Search/Filter โœ… Yes โœ… Yes โœ… Yes
Mobile Friendly โŒ Terminal only โœ… Touch optimized โœ… Responsive
Works Offline โœ… Yes* โœ… Yes* โŒ Needs internet
Pwnagotchi Needed โœ… Required โœ… Required โŒ Browse without device

*Requires internet to download plugins, but can list already installed ones offline.


โœจ Features

Core Features (CLI + UI)

  • ๐Ÿ“ฆ Lightweight Registry: Queries a remote JSON manifest; doesn't bloat your device
  • ๐ŸŽฏ Surgical Installs: Downloads single .py files or extracts specific plugins from archives automatically
  • ๐Ÿง  Smart Config Hints: Scans plugin code and suggests exact config.toml entries
  • โšก Auto-Config: Automatically adds enabled = true so plugins load on restart
  • ๐Ÿ”„ Self-Updating: Update the tool itself and bulk-upgrade installed plugins
  • ๐Ÿท๏ธ Auto-Categorized: GPS, Social, Display, Hardware, Attack, System

Web UI Exclusive Features

  • ๐Ÿ“ฑ Mobile-Optimized: Touch-friendly interface works perfectly on phones
  • ๐ŸŽจ Retro Terminal Theme: Classic Pwnagotchi green-on-black aesthetic
  • โœจ One-Click Installs: No SSH needed - just tap [Install]
  • ๐Ÿ” Live Search & Filters: Find plugins instantly by name, category, or description
  • โœ… Real-Time Status: Installed plugins show green โœ“ badge
  • ๐Ÿ’ฌ Toast Notifications: Visual feedback for all actions

๐Ÿš€ Installation

Step 1: Install CLI Tool (Required)

SSH into your Pwnagotchi and run:

sudo wget -O /usr/local/bin/pwnstore https://raw.githubusercontent.com/wpa-2/pwnagotchi-store/main/pwnstore.py && sudo chmod +x /usr/local/bin/pwnstore

Step 2: Install Web UI Plugin (Optional but Recommended)

# Download the UI plugin
sudo wget -O /usr/local/share/pwnagotchi/custom-plugins/pwnstore_ui.py https://raw.githubusercontent.com/wpa-2/pwnagotchi-store/main/pwnstore_ui.py

# Enable in config
sudo nano /etc/pwnagotchi/config.toml

Add this line:

main.plugins.pwnstore_ui.enabled = true

Restart Pwnagotchi:

sudo systemctl restart pwnagotchi

Then open in your browser: http://<your-pwnagotchi-ip>/plugins/pwnstore_ui/


๐Ÿ“– Usage

๐Ÿ–ฅ๏ธ CLI Commands

List & Search

Browse available plugins (auto-categorized by GPS, Social, Display, etc.):

pwnstore list
pwnstore search discord
pwnstore sources          # Show repository sources

Get Plugin Details

View author, version, description, and source URL:

pwnstore info <plugin_name>

Install a Plugin

Downloads, enables, and scans for required settings:

sudo pwnstore install <plugin_name>

Smart Hint: If the plugin requires specific settings (like API keys), PwnStore will print them after installation.

Manage Updates

sudo pwnstore update      # Plugin updates
sudo pwnstore upgrade     # Pwnstore upgrades

Uninstall a Plugin

Removes the file and disables it in config.toml:

sudo pwnstore uninstall <plugin_name>

๐ŸŒ Web UI Interface

Access the store at: http://<your-pwnagotchi-ip>/plugins/pwnstore_ui/

From Desktop:

  1. Open your browser
  2. Navigate to the URL above
  3. Browse the plugin gallery
  4. Click [Install] on any plugin
  5. Wait for success notification
  6. Restart Pwnagotchi

From Mobile:

  1. Connect to Pwnagotchi's WiFi
  2. Open browser (Safari, Chrome, etc.)
  3. Visit the plugins page
  4. Tap [Install] - optimized for touch
  5. Get instant visual feedback
  6. No SSH needed! ๐Ÿ“ฑ

Web UI Features:

  • ๐Ÿ” Live Search: Type to filter plugins instantly
  • ๐Ÿท๏ธ Category Filters: Display, GPS, Social, Hardware, Attack, System
  • โœ“ Status Badges: See which plugins are already installed
  • โ„น๏ธ Quick Info: Tap info button for plugin details
  • ๐Ÿ—‘๏ธ One-Click Uninstall: Remove plugins just as easily

๐ŸŒ Public Web Gallery (Browse Online)

Access anywhere: https://wpa-2.github.io/pwnagotchi-store/

This is a public catalog you can browse from any device, even without your Pwnagotchi nearby:

What You Can Do:

  • ๐Ÿ“– Browse all plugins with descriptions and categories
  • ๐Ÿ” Search and filter by category (Display, GPS, Social, Hardware, Attack, System)
  • ๐Ÿ“‹ Copy install commands - click any plugin to get the command
  • ๐Ÿ”— View GitHub sources - direct links to plugin repositories
  • ๐Ÿ“ฑ Access from anywhere - desktop, tablet, phone (no Pwnagotchi needed)

How to Use It:

  1. Visit wpa-2.github.io/pwnagotchi-store
  2. Browse or search for plugins
  3. Click on a plugin card to see install command
  4. Copy the command (e.g., sudo pwnstore install discord)
  5. SSH into your Pwnagotchi and paste the command

Perfect for: Planning your plugin setup, discovering new plugins, or sharing the catalog with others!


โš™๏ธ How It Works

The Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚              User Interface Layer                       โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                                                         โ”‚
โ”‚  1. CLI Tool (pwnstore)                                 โ”‚
โ”‚     โ€ข Terminal commands                                 โ”‚
โ”‚     โ€ข SSH access required                               โ”‚
โ”‚     โ€ข Direct control                                    โ”‚
โ”‚                                                         โ”‚
โ”‚  2. Web UI Plugin (pwnstore_ui.py)                      โ”‚
โ”‚     โ€ข Browser on Pwnagotchi (10.0.0.2/plugins/...)     โ”‚
โ”‚     โ€ข Mobile-friendly, one-click installs               โ”‚
โ”‚     โ€ข Calls CLI tool via subprocess                     โ”‚
โ”‚                                                         โ”‚
โ”‚  3. GitHub Pages Gallery                                โ”‚
โ”‚     โ€ข Public catalog (wpa-2.github.io/...)             โ”‚
โ”‚     โ€ข Browse from anywhere                              โ”‚
โ”‚     โ€ข View-only, generates commands                     โ”‚
โ”‚              โ†“                                          โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚           Core Engine (CLI Tool)                        โ”‚
โ”‚  โ€ข Downloads from GitHub                                โ”‚
โ”‚  โ€ข Manages config.toml                                  โ”‚
โ”‚  โ€ข Scans for dependencies                               โ”‚
โ”‚  โ€ข Validates plugins                                    โ”‚
โ”‚              โ†“                                          โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚        Remote Registry (plugins.json)                   โ”‚
โ”‚  โ€ข 66+ plugins indexed                                  โ”‚
โ”‚  โ€ข 8 repository sources                                 โ”‚
โ”‚  โ€ข Auto-updated via GitHub Actions                      โ”‚
โ”‚  โ€ข Used by all three interfaces                         โ”‚
โ”‚                                                         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Key Points:

  • CLI Tool = The engine (does the actual work)
  • Web UI Plugin = Steering wheel (calls CLI tool)
  • GitHub Pages = Window shopping (browse only, then use CLI/UI to install)
  • All three access the same plugin registry

The Registry System

PwnStore doesn't scan GitHub in real-time (too slow). Instead:

  1. The Builder (builder.py): Scans known plugin repositories (listed in repos.txt), categorizes them using keyword logic, and generates a sorted plugins.json

  2. The Registry (plugins.json): Hosted in this repository, contains all plugin metadata

  3. The Client (CLI/UI): Reads the JSON to perform actions

  4. GitHub Actions: Automatically rebuilds the registry when repos.txt is updated


๐Ÿค Adding New Plugins

Want to add a plugin to the store?

  1. Fork this repository
  2. Add the plugin's GitHub URL to repos.txt
  3. Submit a Pull Request
  4. Wait for merge - the registry will auto-update via GitHub Actions

Example Addition to repos.txt:

https://github.com/username/pwnagotchi-plugin-name

Once merged, the plugin will appear in both CLI and Web UI automatically!


๐Ÿ“Š Current Statistics

  • 66+ plugins indexed
  • 8 repository sources monitored
  • 6 categories: Display, GPS, Social, Hardware, Attack, System
  • Auto-updated: Registry rebuilds on every commit

View sources:

pwnstore sources

Output:

REPOSITORY / SOURCE                                | PLUGINS
-----------------------------------------------------------------
github.com/Sniffleupagus/pwnagotchi_plugins        | 22
github.com/NeonLightning/pwny                      | 12
github.com/AlienMajik/pwnagotchi_plugins           | 10
github.com/wpa-2/Pwnagotchi-Plugins                | 7
github.com/unitMeasure/pwn-plugins                 | 7
github.com/jayofelony/pwnagotchi-torch-plugins     | 6
github.com/cyberartemio/wardriver-pwnagotchi-plugin | 1
github.com/marbasec/UPSLite_Plugin_1_3             | 1
-----------------------------------------------------------------
Total Plugins Indexed: 66

๐Ÿ†˜ Troubleshooting

CLI Tool Issues

pwnstore command not found:

# Reinstall
sudo wget -O /usr/local/bin/pwnstore https://raw.githubusercontent.com/wpa-2/pwnagotchi-store/main/pwnstore.py && sudo chmod +x /usr/local/bin/pwnstore

Install fails:

# Check logs
sudo pwnstore install <plugin> --verbose

# Try manual install
cd /usr/local/share/pwnagotchi/custom-plugins/
wget <plugin-url>

Web UI Issues

Page won't load:

# Check plugin is enabled
grep pwnstore_ui /etc/pwnagotchi/config.toml

# Check Pwnagotchi is running
sudo systemctl status pwnagotchi

# Check logs
sudo journalctl -u pwnagotchi | grep pwnstore_ui

Install button doesn't work:

# Verify CLI tool is installed
which pwnstore

# Check browser console for errors (F12)

CSRF token errors: The latest version includes CSRF protection - make sure you're running the latest pwnstore_ui.py


๐ŸŽฏ Use Cases

For Casual Users

Use: Web UI Plugin (/plugins/pwnstore_ui/)

  • Browse plugins on your phone while connected to Pwnagotchi
  • One-click install without SSH knowledge
  • Visual feedback with toast notifications
  • Perfect for non-technical users

For Plugin Discoverers

Use: GitHub Pages Gallery (wpa-2.github.io/pwnagotchi-store)

  • Browse plugins from work/home before buying hardware
  • Plan your plugin setup in advance
  • Share the catalog with friends
  • No Pwnagotchi required to explore

For Power Users

Use: CLI Tool (via SSH)

  • Script plugin installations
  • Automate updates
  • SSH from anywhere
  • Full control and debugging info

For Developers

Use: All Three!

  • Browse GitHub Pages to see what exists
  • Test via CLI for debugging
  • Check Web UI for user experience
  • Add your plugins to the store via PR

๐Ÿ’ก Pro Tips

  1. Update regularly: sudo pwnstore update to get the latest features
  2. Bookmark the UI: Add /plugins/pwnstore_ui/ to your mobile home screen
  3. Use CLI for debugging: pwnstore info <plugin> shows full technical details
  4. Check sources: pwnstore sources to see where plugins come from
  5. Read logs: sudo journalctl -u pwnagotchi -f to watch installations in real-time

๐Ÿ“š Documentation


๐ŸŒŸ Community Resources


โ˜• Support the Development

If this tool saved you time or saved your SD card from clutter, consider buying me a coffee!

Buy me a coffee (WPA2)

๐Ÿ’ฌ Got Questions or Feedback?

Message me via Pwnmail: Test my Pwnagotchi

This is my test Pwnagotchi - send me a message to test if Pwnmail works or to reach out with feedback, bug reports, or plugin suggestions!


๐Ÿ“œ License

GPL-3.0 License - See LICENSE file for details

๐Ÿ™ Credits

Created by WPA2

Special thanks to:

  • The Pwnagotchi community
  • Plugin developers who make this ecosystem possible
  • Contributors who help maintain the registry

๐Ÿ”ฎ Roadmap

  • Plugin dependency resolution
  • Version pinning support
  • Local plugin development mode
  • Auto-backup before updates
  • Plugin ratings/reviews
  • Custom repository support
  • Integration with Pwnagotchi updates

Made with ๐Ÿ’š for the Pwnagotchi community

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •