Go to file
2017-08-28 17:02:08 -07:00
automated_screenshots Upgrade Prettier 2017-08-28 17:02:08 -07:00
css Upgrade Prettier 2017-08-28 17:02:08 -07:00
cursors Swtich to v2.91 cursor images 2014-11-26 14:23:33 +01:00
js Upgrade Prettier 2017-08-28 17:02:08 -07:00
mp3 Rename and move files for better clarity (#186) 2016-08-02 10:10:17 -07:00
skins Move CDN url to package.json 2017-08-17 21:44:14 -07:00
.babelrc Fix transpilation 2017-06-28 16:56:25 -07:00
.eslintignore Upgrade Prettier 2017-08-28 17:02:08 -07:00
.eslintrc Let me sin in peace Travisg ad -p 2017-08-17 21:19:29 -07:00
.gitignore Add preview to repo 2017-05-10 17:36:15 -07:00
.travis.yml Only test on the latest version of Node 2017-06-28 16:12:36 -07:00
deploy.sh Improve deploy/reverting 2017-08-17 21:16:16 -07:00
favicon.ico Add favicon 2014-12-05 19:49:58 -08:00
index.html Host preview image on https 2017-05-15 18:08:01 -07:00
LICENSE.txt Add a license 2015-01-31 14:53:04 -08:00
package.json Upgrade Prettier 2017-08-28 17:02:08 -07:00
preview.png Add preview to repo 2017-05-10 17:36:15 -07:00
README.md Improve settings documentation. 2017-08-28 16:40:41 -07:00
revert.sh Improve deploy/reverting 2017-08-17 21:16:16 -07:00
webpack.config.js Fix transpilation 2017-06-28 16:56:25 -07:00
webpack.production.config.js Swith to Prettier 2017-03-20 23:14:15 +00:00
yarn.lock Upgrade Prettier 2017-08-28 17:02:08 -07:00

Travis Codecov

Winamp2-js

A reimplementation of Winamp 2.9 in HTML5 and JavaScript.

Works in modern versions of Firefox, Safari and Chrome. IE is not supported.

Features

  • Decodes the actual skin file in your browser so you can load your favorite Winamp 2 skins!
  • Load local audio or skin files via drag-and-drop, eject button, or "options" button (upper left-hand corner)
  • Both visualization modes: oscilloscope and spectrum
  • Hotkeys
  • "Shade" mini-mode
  • "Doubled" mode, where the main window is twice as large: Ctrl-D

Development

yarn
# Or: npm install
npm start

Open http://localhost:8080/webpack-dev-server/ in your browser.

Building

npm install
npm run build

Open index.html in your browser.

Deploying

These commands assume you have an SSH key to my server, which you probably don't have. Feel free to adapt them to your own server.

npm run deploy

Reverting

npm run revert # Reverts quickly to the previous deploy
HASH=<SOME_GIT_HASH> npm run deploy # Runs a new deploy at a given hashlike.

Advanced ussage

There are some "feature flags" which you can manipulate by passing a specially crafted URL hash. Simply supply a JSON blob after the # of the URL to change these settings:

  • skinUrl (string) Url of the default skin to use. Note, this file must be served with the correct Allows Origin header.
  • audioUrl (string) Url of the default audio file to use. Note, this file must be served with the correct Allows Origin header.
  • playlistEnabled (boolean) Should the incomplete Playlist window be made avalaible.
  • equalizerEnabled (boolean) Should the incomplete Equalizer window be made avalaible.
  • noMarquee (boolean) Enable/disable to scrolling of the song title in the main window. It can be nice to turn this off when debugging Redux actions, since the scrolling generates a lot of noise.
  • hideAbout (boolean) Selectively hide the byline and GitHub link at the bottom of the page. Useful for taking screenshots.
  • initialState (object) Override the initial Redux state. Values from this object will be recursively merged into the actual default state.

Note: These are intended mostly as development tools and are subject to change at any time.

Reference

Predecessors

  • Webamp2x An impressive implementation from 2002(!).

  • Winamp em HTML5 e Javascript In 2010 a developer named Danilo posted one of his HTML5 experiments: "an audio player simulating good old Winamp". You will have to download the zip file.

  • JuicyDrop An HTML5 implementation with less empasis on being true to the skin, but fully featured visualizations. @cggaurav is keeping it alive on GitHub

  • Spotiamp The folks at Spotify reimplemented Winamp as a frontend for Spotify. Not in a browser, and only runs on Windows.

Thanks

  • Research and feature prototyping: @PAEz

Thank you to Justin Frankel and everyone at Nullsoft for Winamp which inspired so many of us.

License

While the Winamp name, interface, and, sample audio file are surely property of Nullsoft, the code within this project is released under the MIT License. That being said, if you do anything interesting with this code, please let me know. I'd love to see it.