Code Analysis
Understand what gets analyzed, how scoring works, and how to improve your readiness score.
On this page
Analysis Types
The Release Readiness Check reviews your source and configuration before you build. A build analysis that inspects compiled artifacts is planned.
Release Readiness Check
Analyzes your source code and configuration files before you build. Checks package.json, build config, dependencies, security, and platform requirements.
Build Analysis
Will inspect compiled build artifacts (.app, .dmg, .exe, .msi, .AppImage, .deb) for code signing, notarization and store compliance. Not available yet.
How to Run a Check
From the Dashboard
Open Readiness Check in the sidebar → click "Run Readiness Check". The files are read from your connected GitHub repo's default branch.
What Gets Checked
The check inspects your project across multiple categories. Each category has a weight that determines its impact on the overall score.
Core Categories
Package.json Essentials
- •name, version, description fields
- •author & license metadata
- •main entry point configuration
- •electron dependency version
Build Tool Configuration
- •electron-builder / electron-forge setup
- •Build scripts in package.json
- •Output directory configuration
- •Asset bundling settings
Main Process & Preload
- •Main process entry file exists
- •Preload script configuration
- •IPC communication setup
- •Context isolation usage
Dependencies & Compatibility
- •Electron version compatibility
- •Native module handling
- •Dependency audit (outdated/vulnerable)
- •Node.js version requirements
Security Configuration
- •Context isolation enabled
- •Node integration disabled
- •Web security settings
- •CSP (Content Security Policy)
Auto-Update Config
- •electron-updater setup
- •Update server configuration
- •Update feed URL
- •Code signing for updates
Platform-Specific Categories
macOS
- • icon.icns present
- • Entitlements plist
- • Hardened runtime
- • Notarization config
Windows
- • icon.ico present
- • NSIS / MSI config
- • Authenticode signing
- • Publisher info
Linux
- • icon.png present
- • Build targets config
- • Desktop entry file
- • Snap / Flatpak config
Scoring System
Your readiness score (0–100) is calculated as a weighted average across all applicable categories.
| Category Status | Score Contribution |
|---|---|
| Pass | 100% of category weight |
| Warning | 50% of category weight |
| Fail | 0% of category weight |
Overall Status
No failed categories. Your project is ready for the next step.
Some non-critical issues found. You can proceed, but improvements are recommended.
One or more critical categories failed. Fix the issues before proceeding.
Severity Levels
Each finding in the analysis report has a severity level:
Error
Critical issue that will block builds or store submission. Must be fixed.
Warning
Non-critical issue. Won't block publishing, but may cause problems later.
Info
Suggestion for improvement. Not required, but recommended for best practices.
Reports & Results
After an analysis completes, you can access the results in two ways:
Analysis Details
Interactive view within the dashboard. Click on any analysis to see:
- • Readiness score with visual indicator
- • Category-by-category breakdown
- • Errors, warnings, and info items
- • Actionable recommendations
Full Report
Downloadable Markdown report with:
- • Complete analysis summary
- • All findings with details
- • Critical issues list
- • Prioritized next steps
- • Shareable with your team
Pricing
The Release Readiness Check is free during the beta, up to 5 checks per day. See what's coming next on the roadmap.
Tips to Improve Your Score
1. Complete your package.json
Ensure name, version, description, author, and license are all set. These are required by all app stores.
2. Configure electron-builder properly
Add a build section to your package.json or create an electron-builder.yml config file with proper platform targets.
3. Enable security best practices
Set contextIsolation: true and nodeIntegration: false in your BrowserWindow options. Add a Content Security Policy to your HTML.
4. Add platform-specific icons
Include icon.icns (macOS), icon.ico (Windows), and icon.png (Linux) in your build resources directory.
5. Set up code signing early
For macOS, configure hardened runtime and entitlements. For Windows, set up Authenticode signing. This prevents failed builds later.
6. Re-run after fixing issues
After making changes, run another code analysis to verify your fixes and watch your readiness score improve.
Continue reading
Getting Started
Create your account, set up your first project, and run your first analysis.
Code Signing & Notarization
Set up Apple code signing, Windows Authenticode, and macOS notarization.