mirror of
https://github.com/Architeuthis-Flux/JumperlessV5.git
synced 2025-09-05 10:47:58 +00:00
4.0 KiB
4.0 KiB
Jumperless Project Structure
📁 Root Level Files
JumperlessWokwiBridge.py
- Main application source codeJumperlessAppPackager.py
- Build/packaging scriptrequirements.txt
- Python dependenciesexample_sketch.ino
- Example Arduino sketch
📁 Directory Structure
assets/
- Project Assets
icons/
- All icon formats (PNG, ICO, ICNS)firmware.uf2
- Jumperless firmwareJumperlessWokwiDMGwindow4x.png
- DMG background image
builds/
- Organized Build Outputs
builds/
├── linux/
│ ├── appimage/ # Linux AppImages (ready to distribute)
│ │ ├── Jumperless-aarch64.AppImage
│ │ ├── Jumperless-x86_64.AppImage
│ │ ├── run_jumperless_appimage.sh
│ │ ├── Jumperless.desktop
│ │ └── README_AppImages.md
│ ├── python/ # Linux Python packages
│ │ ├── Jumperless_Linux.tar.gz
│ │ ├── Jumperless-linux-arm64.tar.gz
│ │ └── Jumperless-linux-x86_64.tar.gz
│ ├── native/ # Linux native builds (future)
│ ├── jumperless_cli_launcher.sh
│ └── jumperless_launcher.sh
├── macos/
│ ├── native/ # macOS native packages
│ │ └── Jumperless_Installer.dmg
│ ├── python/ # macOS Python packages
│ │ └── Jumperless_macOS.tar.gz
│ └── appimage/ # (unused for macOS)
└── windows/
├── native/ # Windows native packages
│ ├── Jumperless.exe
│ ├── Jumperless.exe.zip
│ └── Jumperless-Windows-x64.zip
├── python/ # Windows Python packages
│ └── Jumperless_Windows.zip
├── appimage/ # (unused for Windows)
├── run_in_windows_terminal.bat
└── run_jumperless_terminal.bat
tools/
- Build Tools
appimagetool-aarch64.AppImage
- AppImage creation toolarduino-cli
/arduino-cli.exe
- Arduino CLI toolscreateDMG.sh
- macOS DMG creation scriptavrdudeCustom.conf
- AVR programming configuration
temp_organize/
- Temporary/Legacy Files
- Old build artifacts and legacy folder structures
- Can be cleaned up after verification
🚀 Usage
Building Packages
# Run the packager (automatically detects platform)
python3 JumperlessAppPackager.py
Distributing
- Linux Users: Share
builds/linux/appimage/
folder - macOS Users: Share
builds/macos/native/Jumperless_Installer.dmg
- Windows Users: Share
builds/windows/native/Jumperless.exe
- Developers: Share appropriate Python packages from
builds/*/python/
📦 Package Types
AppImage (Linux)
- Target: End users on any Linux distribution
- Benefits: No installation required, self-contained
- Files:
builds/linux/appimage/
Native Packages
- macOS: DMG installer with app bundle
- Windows: Standalone EXE or installer
- Files:
builds/*/native/
Python Packages
- Target: Developers and advanced users
- Benefits: Cross-platform, smaller size, requires Python
- Files:
builds/*/python/
🔧 Development
Adding New Build Targets
- Create subdirectory in
builds/{platform}/{type}/
- Update
JumperlessAppPackager.py
paths - Test build process
Icon Updates
- Update files in
assets/icons/
- Rebuild packages to include new icons
Tool Updates
- Update tools in
tools/
directory - Update paths in
JumperlessAppPackager.py
if needed
📋 Migration Notes
This structure was reorganized from a flat directory to improve:
- Organization: Clear separation by platform and package type
- Maintainability: Easier to find and manage build outputs
- Distribution: Ready-to-share folders for each platform
- Development: Clear separation of source, tools, and outputs
All paths in JumperlessAppPackager.py
have been updated to use the new structure.