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 update
to download Neutralino binaries - Develop: Run
neu run
to 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.iss
for 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.md
for detailed setup instructions
- Push to
main
branch - 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! 🚀