Modernization Update: Processing 4, Apple Signing, Cross-Platform Builds#14
Open
james-see wants to merge 26 commits into
Open
Modernization Update: Processing 4, Apple Signing, Cross-Platform Builds#14james-see wants to merge 26 commits into
james-see wants to merge 26 commits into
Conversation
added 26 commits
December 18, 2025 01:31
…ation - Migrate to Processing 4 with fullScreen(P3D) and settings() - Add audio input device enumeration and selector dropdown - Add config persistence (JSON) for audio device and settings - Fix deprecated APIs (stop() -> dispose(), displayWidth -> width) - Add macOS code signing and notarization script (build-macos.sh) - Add cross-platform build script with auto-install (build.sh) - Add env.example for build credentials - Update README with complete documentation
- Use official Processing contribution manager URLs for Minim and ControlP5 - Add proper error handling and fallback messages - Add env.example for build credentials template - Make install process idempotent (skip already installed)
- Auto-creates release on tag push (v*) - Generates release notes from commits - Creates source zip archive - Optional macOS build job (disabled by default)
Processing 4 lacks reliable CLI export. Source zip is sufficient.
- release.sh: Full release automation (build, sign, tag, upload) - .githooks/pre-push: Builds app when pushing version tags - Uses gh CLI for GitHub release uploads
- Automated export via processing-java --export - No more manual Processing IDE export needed - Uses --no-java flag (CLI embed bug workaround) - Requires: processing-java CLI, Java 17+, gh CLI
- Copies sketch.icns to app bundle Resources - Updates Info.plist to reference icon
- 4 visualization examples (vortex, droplet, terrain, particles) - Interface screenshot in controls section
- Submit to Apple notary service after signing - Staple notarization ticket to app - Requires APPLE_ID, TEAM_ID, APP_PASSWORD in .env
- Separate 'macOS App' (just download) vs 'From Source' instructions - Update GitHub Actions to skip if release already exists (created by local script) - Add emoji for better visual hierarchy
- Dark-themed Astro site with mouse-follow particle effects - Hero section with fav.png background and parallax - Features section for 3 visualizers + effects - Screenshot gallery with lightbox - System audio setup guide - Download CTA linking to releases - Built to docs/ folder for GitHub Pages
- Smooth cursor trail with blur/fade instead of particles - Hero image visible with parallax and slow zoom animation - Floating orb background effects - Button hover jiggle and shimmer animations - Glowing text animations - Card hover effects with scale - Scanline overlay for retro feel
- Configure Astro to output external JS files instead of inline - Fixes GitHub Pages CSP blocking inline script execution
- Adds Content-Security-Policy meta tag with unsafe-eval - Allows external scripts, inline scripts, and eval - Fixes GitHub Pages CSP blocking
|
Ahhh please someone accept this! I was about to make some of these changes, but this is fantastic! |
lucid-jake
reviewed
Feb 26, 2026
| try { | ||
| if (selectedDeviceIndex == 0 || audioDeviceMixers.get(selectedDeviceIndex) == null) { | ||
| // Use system default | ||
| input = minim.getLineIn(Minim.STEREO, 512); |
There was a problem hiding this comment.
I had to make this Minim.MONO for it to work on my M1 2020 macbook pro running Sequoia 15.0.1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hey @codygibb! 👋
I've been a fan of Animus for years and recently took on modernizing it for 2025. Since the original hasn't been updated in 11 years, I wanted to share these changes back and see if you'd like to merge them—or if you'd prefer, I'm happy to maintain a fork going forward.
What's New
Processing 4 Compatibility
settings()/fullScreen(P3D)patterncaptionLabel()→getCaptionLabel(),super.stop()→dispose())macOS Code Signing & Notarization
release.shscript for one-command releasesAudio Device Selection
New Features
Developer Experience
build.shwith auto-install of prerequisitesenv.examplefor Apple signing credentialsFiles Changed
Animus.pde- Main sketch (P4 compat, audio selection, config)Visualizer.pde- Fixed runtime width calculationsketch.properties- Processing 4 configbuild.sh,build-macos.sh,release.sh,env.example.github/workflows/release.ymlREADME.mdwith screenshotsScreenshots
The visualizer running on macOS with system audio from Spotify:
Offer
If you're still interested in maintaining Animus, I'd love to collaborate! If not, I'm happy to continue maintaining my fork at james-see/animus-visualizer as a hard fork with full attribution to your original work.
Either way, thanks for creating Animus—it's been a blast modernizing it! 🙏
Tested on: