I am open-sourcing this in case somebody finds value in it and wishes to fork the repo and build something out of it. (see license)
- jczimm ✌️
--
Desktop application that analyzes frequency data of individual audio tracks to generate corresponding analysis files (see .afa file format). For Windows, OSX, and Linux.
TODO: test for OSX and Linux (multiple versions)
Go ahead and grab an installer.
git clone https://github.com/jczimm/audio-analyzer.git
cd audio-analyzer/
npm install
├── app/ Application source is built into here
├── app.js Controls Electron's main process
├── assets/ Assets used by packaged application, installers
│ ...
├── dist/ Application is packaged into here (releases, installers)
├── gulpfile.js Tasks build application *source* into app/
├── lib/ Static libraries used by the source; copied into app/ by gulpfile.js
│ ...
├── package.json Scripts build/package *application* into dist/
├── packager.json Used by `electron-builder` for packaging the application
│ ...
├── scripts/ Shell/batch scripts used by the application build/packaging pipeline
├── src/ Application source
│ │ ...
│ ├── index.html Electron app entry point
│ │ ...
│ ├── main.js Main application script (among other scripts)
│ │ ...
│ ├── package.json Used for app entry in packaged application
│ └── ...
├── typings/ Typescript files used by VSCode (dev only)
└── util/ Development utility scripts (used in app.js and gulpfile.js)
To open the application and reload the brower window upon changes in src/ and the renderer upon changes to app.js:
gulp dev
Effectively runs
electron app/app.js
andgulp watch
To simulate the application "in production" (in a non-development environment):
electron app/
To build the application's source:
gulp build
Transpiles ES6 javascript, compiles scss, and copies the rest from src/ - and app.js - into app/
# Package for both Windows and OSX
npm run build
# Package for Windows
npm run build:win
# Package for OSX
npm run build:osx
Generates folder(s) with a rebranded electron executable in a context to launch the application (outputs into dist/)
build
, build:win
, and build:osx
build everything in src/, so if you want to build only the files that have been modified since the last build, add :update
to the script name (i.e. npm run build:update
, npm run build:win:update
, or npm run build:osx:update
)
# Generate installers for both Windows and OSX
npm run pack
# Generate installers for Windows
npm run pack:win
# Generate installers for OSX
npm run pack:osx
Generates installers for the packaged application (outputs to dist/)
# Export for both Windows and OSX
npm run export
# Export for Windows
npm run export:win
# Export for OSX
npm run export:osx
Builds source, builds application, and generates installers (runs
build
andpack
)
TODO!
See CONTRIBUTING.md.
See TODO.md.
TODO
MIT © Jacob Zimmerman (jczimm) – LICENSE.md contains a copy of the license.