This is a template for creating cross-platform desktop applications using Neutralino.js with comprehensive build automation and packaging tools.
Before using this template, replace the following placeholders throughout the project files:
{{APP_DISPLAY_NAME}}- The human-readable name of your app (e.g., "My Awesome App"){{APP_BINARY_NAME}}- The binary/executable name (e.g., "MyAwesomeApp", no spaces){{APP_NAME_LOWERCASE}}- Lowercase app name for identifiers (e.g., "myawesomeapp"){{APP_VERSION}}- Your app version (e.g., "1.0.0"){{APP_PUBLISHER}}- Your name or company name{{APP_YEAR}}- Current year for copyright
neutralino.config.json- Main configuration fileresources/index.html- Main HTML fileresources/styles.css- CSS stylesresources/js/main.js- Main JavaScript filebuild automation/template.iss- Windows installer script_app_scaffolds/- Platform-specific packaging filesbuild automation/build-*.sh- Build scriptsbuild automation/setup-macos-signing.sh- macOS signing script.github/workflows/build-linux.yml- linux GitHub action script.github/workflows/build-macos.yml- macos GitHub action script.github/workflows/build-windows.yml- windows GitHub action script.github/workflows/release-all-platforms.yml- all platforms GitHub action scriptbuild automation/build-linux.sh- linux build script
Additional placeholders for build automation:
{{APP_DESCRIPTION}}- App description for package metadata{{GITHUB_USERNAME}}- Your GitHub username{{GITHUB_REPO}}- Your GitHub repository name
- Replace Placeholders: Use find and replace to update all placeholders with your app's information
- Add Your Icons: Replace placeholder icons in
resources/icons/with your app icons - Install Neutralino CLI:
npm install -g @neutralinojs/neu - Initialize: Run
neu updateto download Neutralino binaries - Develop: Run
neu runto start development - Build: Use the build automation scripts for distribution
neutralino-template/
├── .github/workflows/ # GitHub Actions CI/CD workflows
├── build automation/ # Build scripts and automation
│ ├── template.iss # Windows installer script
│ ├── build-*.sh # Platform build scripts
│ ├── GITHUB_ACTIONS_SETUP.md # GitHub Actions setup guide
│ └── *.py # Utility scripts
├── _app_scaffolds/ # Platform-specific packaging
│ ├── linux/ # Linux .desktop and install scripts
│ ├── mac/ # macOS app bundle and packaging
│ └── win/ # Windows-specific files
├── resources/ # App resources
│ ├── icons/ # App icons (add your icons here)
│ ├── js/ # JavaScript files
│ ├── index.html # Main HTML file
│ └── styles.css # Main CSS file
├── neutralino.config.json # Neutralino configuration
├── .gitignore # Git ignore rules
└── README.md # This file
neu run- Run the app in development modeneu build- Build the app for current platformneu build --release- Build optimized release version
This template includes comprehensive build automation for all platforms using GitHub Actions CI/CD:
- Uses
template.issfor Inno Setup installer - Builds x64 executable
- Creates installer executable in the Output folder
- Creates .app bundle
- Code signing support (configure in build scripts)
- DMG creation
- Creates .deb packages
- AppImage support
- Desktop file integration
This template includes pre-configured GitHub Actions workflows for automated building and releasing:
- Automated Builds: Triggers on push to main branch and pull requests
- Multi-Platform: Builds for Windows, macOS, and Linux simultaneously
- Release Management: Automatically creates releases with built binaries
- Code Signing: Support for signing binaries on all platforms
- Artifact Storage: Stores build artifacts for download
- Push your project to a GitHub repository
- Configure secrets for code signing (optional)
- Review and customize the workflow in
.github/workflows/ - See
build automation/GITHUB_ACTIONS_SETUP.mdfor detailed setup instructions
- Push to
mainbranch - Pull requests
- Manual workflow dispatch
- Tag creation for releases
Add your app icons to resources/icons/ in the following formats:
appIcon.png- Main app icon (512x512 recommended)icon.ico- Windows icon fileicon.icns- macOS icon filefavicon.ico- Browser/window icon
- Set app metadata
- Configure window properties
- Define build targets
- Set permissions and API access
- Customize build automation in
build automation/ - Configure GitHub Actions workflows for automated builds
- Set up code signing for all platforms
- Automated release creation and distribution
- Cross-platform builds in the cloud
-
Install Dependencies
npm install -g @neutralinojs/neu
-
Update Neutralino
neu update
-
Start Development
neu run
-
Build for Distribution
# Local builds - Run appropriate build script from build automation/ ./build automation/build-linux.sh # Linux ./build automation/build-mac.sh # macOS # Use Inno Setup with template.iss for Windows # Or use GitHub Actions for automated cloud builds # See build automation/GITHUB_ACTIONS_SETUP.md for configuration
- ✅ Cross-platform desktop app framework
- ✅ Modern UI with responsive design
- ✅ Platform detection
- ✅ System notifications
- ✅ Window management
- ✅ GitHub Actions CI/CD automation
- ✅ Build automation for all platforms
- ✅ Installer/package creation
- ✅ Icon and branding support
- ✅ Development tools integration
- ✅ Automated release management
- Add HTML elements to
resources/index.html - Style them in
resources/styles.css - Add functionality in
resources/js/main.js - Use Neutralino APIs for system integration
- Use
Neutralino.os.getPlatform()to detect platform - Add conditional code for platform-specific functionality
- Customize build scripts for platform requirements
This template is provided as-is. Add your own license for your application.
Happy coding! 🚀