Introducing... JAMS! [Demo] Alpha 2


Please read this update for the Alpha 2_Reset network

Introducing… JAMS! [Demo]

safe://jams.demo4/ Not used anymore. For Alpha 2 reset network use

JAMS is a decentralized music player for storing, playing, downloading, (and soon streaming :wink:) your music library on The SAFE Network.

Click on the + button on the landing page to navigate to the player and then either choose your music folder or drag and drop folder/files to the players main window to upload your music.

Your files will be subjected to meta-data parsing to collect the artist, song title, album, and album artwork. From that point, progress uploaded is shown as a percentage (shown in photo below) and is calculated using each song as a fraction of the total percentage. It’s recommended you upload multiple files at once to actually see progress, also please be patient :sunglasses:. In the near future we will likely use chunks uploaded to show progress. The meta data is stored as an MD (Mutable Data) while the song file is stored unencrypted as an ID (Immutable Data) and then associated with each other. Leaving the ID unencrypted should help reduce PUT costs when JAMS users upload already existing music files, though you’ll still have to pay for the meta data. The MD’s and ID’s xor address are stored in the users default _music container.

It should be noted you can currently only play music from a newly created playlist by hitting the play button to the left.

Once your library has been populated, you will be able to use these features.


•Play music with standard player features (play, previous, next, shuffle, loop, repeat) with song and album art displayed
•Edit song entries, via edit icon to the right
•Download songs from library, via cloud download icon to the right
•Share a song, via the share icon to the right
•Favorite a song to the right of the players buttons, under album art
•See a list of your favorite songs by selecting “Favorites” in sidebar to the left
•See recently played songs, by selecting “Recent” in the sidebar to the left
•See what songs you’ve already downloaded by selecting “Downloaded” in the sidebar to the left
•Retrieve a shared song by inputing shared string
•See what shared songs you have retrieved in the “Inbox” and what songs you’ve shared in “Outbox”
•Create playlists by clicking “Create New Playlist” in the sidebar to the left
•Every 15 seconds JAMS will save any changes made, automatically
•Supports .mp3 .m4a .aac haven’t tested .wav or other formats

Songs from the Library can be dragged and dropped into playlists by grabbing the directional arrows to the left of a song and hovering over/dropping into the playlist of your choosing.

Known limitations

•Our UI won’t currently scale well with different sized screens and this will be addressed after our upcoming major refactor.
•Album art size can act up (we thought we had this pinned for the demo :grimacing:)
•Play not yet available in library, favorites, etc.
•No streaming yet
•No standalone version (currently)
•Unknown bugs :stuck_out_tongue_winking_eye:

Future work

•Play in library, recent, etc
•Tabs for podcasts & audiobooks in the sidebar
•Major refactor
•Updated UI, recruiting a dedicated front end dev
•Mobile app for android and iOS, allowing you to play downloaded files offline. *dependent on funding
•Open sourced code
•Support for multiple languages

JAMS will always be a free/ad free app and/or service and will be open sourced when it has secured a domain and has officially launched.

JAMS now has a Twitter you can follow. @JAMSplayer and you are encouraged to share a screenshot of the demo in action, a comment, and the hashtags #KickOutTheJAMS #SAFENetwork #dapps etc. whatever you deem relevant :slightly_smiling_face:

I’d like to give special thanks to Bryan Bonvallet, the developer I’ve collaborated with on this. He was new to SAFE but he plowed right through learning the API’s and delivered. Also thanks to Mallory Ruesch for turning my character art into beautiful vector images. Both Bryan and Mallory are on upwork. Special thanks to community member @loziniak your SAFE API wrapper was a huge help in getting us up and running. Of course, @bochaco for assisting in PM’s and @joshuef also for hearing our call for streaming in the browser, that feature will really upgrade this app in the near future! Also @hunterlester your DOM API playground was a helpful learning tool.

This app still has a long ways to go but I’m personally dedicated to it, SAFE, and this great community. My personal focus in the SAFE app ecosystem, will be on this, and other entertainment based applications for “mainstream” users. Bryan has ensured me he’s interested in continuing on with this project and we’re looking forward to seeing people use JAMS on the SAFE Network.

We now have a thread on the dev forum for reporting technical issues and a brief amount of feedback

If you’d like to donate to help fund future development, donations are not necessary but are welcome, greatly appreciated, and will be put to good use! Posting this from work and need to generate some addresses still but was anxious to share with you all. That said, expect bugs and have fun with it :slight_smile:




Proposal for new standard of linking to SAFE sites here on this forum
Project n99 - An Interactive Platform for Creators
Problems with Alpha 2 Network?
MaidSafe Dev Update - February 15, 2018

@Nigel you just turned a dull and dreary day into woot wooot. Cant wait to get home and try it!!
Awesome :sunglasses:


You’re my hero @Nigel


Nice! I had fun doing testing on the network this morning but I noticed issues we hadn’t seen before.

One is album artwork showing up different sizes which we thought we had solved.

The other is if a song stops after 2 seconds of playing just hit the play button next to the playlist name and then things seem to work fine.

Enjoy @Savage! :smiley:


Bryan is the real hero, but thank you! And I’ll pass it on :slight_smile:


Boom! And another awesome surprise app for the safenetwork! Amazing work!


Woah! Didn’t see that one coming. You sly old dog @nigel (and Bryan and Mallory)! You kept that quiet! It’s amazingly slick! Fantastic work guys. :+1: :+1: :+1:


Sort this out would you?


hahaha - i’ll be hanging around in the safenetwork now more often xD


I was going to wait to post all at once but I need to generate fresh addresses for MAID and LTC securely. The BTC one is good to go though :slight_smile: thanks


Awesome @Nigel and Bryan! What a surprise gem :smile: It’s so good to see apps popping up. :metal:
Edit: …and Mallory! Sorry!


woot !! this really rocks. I love the character on the splash screen !

Looks like I will finally have my music in one single place for good :slight_smile: A very unexpected use of the network for me, but that will really be welcome.


Deeply disappointed I won’t be the first person ever to play Dead Kennedys on the SAFE Network.


Lol never thought I’d hear that! This whole app is paying homage to MC5’s kick out the jams, if anyone has heard it. The Presidents of the United States of America have a unique version of that song and Rage Against The Machine too. Check it out. Love DK though :stuck_out_tongue_closed_eyes:


Know it well! First punk song according to some, but being British I’m sticking with the Damned.


We truly are the punk rock internet.


Just amazing love it love it!

The name too. “Jams”

SAFENet … Attracts the best talent.

Jams. It all feels so “Ubuntu” if you know what I mean.

No looking back at i…Rip off.


hehe - with vidy, the cms, the search angine, jams and decorum the only other thing we need is a free exchange on the safe network and then our sect can exist completely without the rest of the internet xD

who needs more than cat videos, music, conversation and a way to exchange currency :open_mouth:

ps: but a petname system now would be super-awesome as addition -.-" would be cool to just type: “jams” and press enter => be there …


Can we not have cat videos on the punk internet please?


we could program a censoring-addon for peruse blocking all cat content :open_mouth:
(or one adding a cat to all content :thinking: )