pdaddyo / soundbounce Goto Github PK
View Code? Open in Web Editor NEWSocial listening for Spotify - music sounds better together.
License: MIT License
Social listening for Spotify - music sounds better together.
License: MIT License
Just like voting or adding tracks ^^
I had an hour glass trying to install your star update. Same symptoms as my recent issue (not sure if i can open that issue myself).
As I was rebooting, a window shut and behind it I noticed a "too many 16 bit programs running" notification (I believe that's what it said, I only got a glance at it).
After reboot, I was able to install the new version just fine (starring works!). If you believe this is a Soundrop issue, I'll try to reproduce the full notification but I didn't notice it the first time I was stuck with the hour glass when clicking the .exe
I went to the Liquifaction room, and it shows me that the song is playing but I can't hear a thing. Playback devices are set correctly. here's my soundbounce-log.txt:
2014-12-17 13:58:44,156 DEBUG[SoundBounce.WindowsClient.Program]: Initial startup: Main()
2014-12-17 13:58:44,408 INFO [SoundBounce.WindowsClient.SpotifyEnabledBrowser]: Cef version initialized OK.
2014-12-17 13:58:44,422 DEBUG[SoundBounce.SpotifyAPI.Spotify]: Message thread running...
2014-12-17 13:58:49,489 DEBUG[SoundBounce.SpotifyAPI.Spotify]: api_version=12
2014-12-17 13:58:49,489 DEBUG[SoundBounce.SpotifyAPI.Spotify]: api_version=12
2014-12-17 13:58:49,489 DEBUG[SoundBounce.SpotifyAPI.Spotify]: application_key_size=321
2014-12-17 13:58:49,490 DEBUG[SoundBounce.SpotifyAPI.Spotify]: cache_location=C:\Users\Ville\AppData\Local\Temp\SoundBounce_temp
2014-12-17 13:58:49,490 DEBUG[SoundBounce.SpotifyAPI.Spotify]: settings_location=C:\Users\Ville\AppData\Local\Temp\SoundBounce_temp
2014-12-17 13:58:49,883 DEBUG[SoundBounce.SpotifyAPI.Spotify]: sp_session_preferred_bitrate() to 320k succeeded!
2014-12-17 13:58:49,991 DEBUG[SoundBounce.SpotifyAPI.Spotify]: libspotify > 11:58:49.991 I [ap:1752] Connecting to AP ap.gslb.spotify.com:4070
2014-12-17 13:58:50,044 DEBUG[SoundBounce.SpotifyAPI.Spotify]: libspotify > 11:58:50.044 I [ap:1226] Connected to AP: 194.14.177.22:4070
2014-12-17 13:58:55,482 DEBUG[SoundBounce.SpotifyAPI.Spotify]: libspotify > 11:58:55.482 E [session:926] Not all tracks cached
2014-12-17 13:58:55,568 DEBUG[SoundBounce.SpotifyAPI.Spotify]: libspotify > 11:58:55.568 I [offline-mgr:2084] Storage has been cleaned
2014-12-17 13:58:55,568 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:55,575 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:55,751 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:55,792 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:55,888 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From http://cdnjs.cloudflare.com/ajax/libs/react/0.12.1/JSXTransformer.js Line 318: You are using the in-browser JSX transformer. Be sure to precompile your JSX for production - http://facebook.github.io/react/docs/tooling-integration.html#jsx
2014-12-17 13:58:56,345 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:56,404 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:56,772 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:56,881 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:56,951 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:57,180 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:57,449 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:57,481 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:57,591 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,012 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,113 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,130 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,419 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,486 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,506 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 286: ms difference from server:
2014-12-17 13:58:58,561 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:58,611 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From http://cdnjs.cloudflare.com/ajax/libs/react/0.12.1/react-with-addons.js Line 10115: Each child in an array should have a unique "key" prop. Check the render method of ChatPanel. See http://fb.me/react-warning-keys for more information.
2014-12-17 13:58:58,830 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,017 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 182: calling spotifyBrowserApi.playTrack on 3OswfkERF1PNrYpNOELy1h
2014-12-17 13:58:59,022 DEBUG[SoundBounce.SpotifyAPI.Track]: public Track(spotify:track:3OswfkERF1PNrYpNOELy1h) - calling sp_link_as_track...
2014-12-17 13:58:59,023 DEBUG[SoundBounce.SpotifyAPI.Track]: Track.init() - begin sp_track_is_loaded loop...
2014-12-17 13:58:59,126 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,203 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,394 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:58:59,529 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,653 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,787 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:58:59,971 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:00,042 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:00,065 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:00,398 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:00,667 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:00,761 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,005 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,289 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,344 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,568 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,759 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:01,782 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,126 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,348 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,433 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,456 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,689 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,712 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,815 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:02,919 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,061 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,169 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,192 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,384 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,509 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,702 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:03,746 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,130 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,298 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,319 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,663 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,776 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:04,799 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,183 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,337 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,360 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,665 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,940 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:05,963 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,098 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,403 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,541 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,644 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,746 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,799 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,844 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:06,987 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,123 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,215 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,449 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,497 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,583 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,730 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,752 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,886 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:07,935 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,094 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,117 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,204 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,248 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,374 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,420 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,569 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,592 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,700 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,765 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,875 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:08,940 DEBUG[SoundBounce.SpotifyAPI.Spotify]: spotify > metadata_updated
2014-12-17 13:59:09,039 ERROR[SoundBounce.SpotifyAPI.Track]: Track is not loaded after 10 seconds - 3OswfkERF1PNrYpNOELy1h - IS_LOADING
2014-12-17 13:59:09,040 ERROR[SoundBounce.SpotifyAPI.Spotify]: mainThread() unhandled exception: System.InvalidOperationException: Track is not loaded after 10 seconds - 3OswfkERF1PNrYpNOELy1h - IS_LOADING
at SoundBounce.SpotifyAPI.Track.init(IntPtr trackPtr) in d:\Dropbox\soundbounce\src\SoundBounce.Spotify.API\Track.cs:line 113
at SoundBounce.SpotifyAPI.Track..ctor(String link) in d:\Dropbox\soundbounce\src\SoundBounce.Spotify.API\Track.cs:line 89
at SoundBounce.WindowsClient.SpotifyBrowserAPI.PlayTrack(Object[] args) in d:\Dropbox\soundbounce\src\SoundBounce.WindowsClient\SpotifyBrowserAPI.cs:line 81
at SoundBounce.SpotifyAPI.Spotify.mainThread() in d:\Dropbox\soundbounce\src\SoundBounce.Spotify.API\Spotify.cs:line 270
2014-12-17 13:59:20,534 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:59:32,070 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:59:34,106 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:59:43,959 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:59:56,127 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 182: calling spotifyBrowserApi.playTrack on 48Sl8GJq3EIc0XfeXLFZIc
2014-12-17 13:59:57,053 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 13:59:59,446 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:00:04,599 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:00:12,434 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:04,325 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:06,127 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:08,705 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:24,388 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:32,672 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:33,096 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:42,216 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:45,794 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:57,708 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:01:58,108 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:03,730 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:06,066 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:13,008 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:22,739 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:36,786 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:39,627 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:02:39,633 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:03:03,617 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
2014-12-17 14:03:03,701 DEBUG[SoundBounce.WindowsClient.SpotifyEnabledBrowser]: From Line 224: currentScroll
Sharing could be via an access code, or via a custom protocol handler e.g soundbounce:room:1245 to link to private rooms.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
e.g. "Paul added 5 tracks" instead of 5 separate messages
This functionality in Soundrop is something I feel should be replicated in Soundbounce.
Clicking a room should not start playback, it should just show you that room to allow you to check out the track list / chat before committing to changing what you are currently listening to.
The user should have to click a play (or subscribe, etc) button within a room to start playback and/or switch playback to the new room.
Without this, browsing other rooms can be quite harsh on the ears as you'll be jolting from mid-track to mid-track, which discourages browsing and curiosity.
Happy to debate this though, i'd like to hear other opinions.
Not sure what you had in mind for this, and/or if it's already part of moderation tools which may or may not have been implemented already (I haven't tried creating my own room yet because I'm not sure if you can delete rooms yet and I don't want to clutter it up with a test room)
Anyway, something to handle the inevitable trolling which occurs in any popular community would be great.
Currently the player just doesn't play anything, or plays the track from the last room you were in!
Should give a message as an interim solution, and long term should play a replacement instead.
Feature suggestion - Ability to join a room and see the playlist, add tracks, vote for tracks - but no audio streaming.
e.g. chat messages can say "in 3 minute's time" if your local clock is behind the server's
Add to favourites, list them on homepage, remove from favourites
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Allow admins to ban users (trolls)
Insert into the Chrome Frame once the app has loaded
I'm only getting an hour glass when trying to run the .exe. I have to end the processes and close the download folder with task manager.
thanks,
Tony
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
"3 people voted for XXX by YYY"
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Pause / play buttons on keyboards
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Can't click links at the moment. Should be shortened too to save space.
Essentially needs "SpotifyEnabledBrowser" part of the client porting to OSX...
For local tweaks to the app
Currently you have to show in spotify and preview there.
e.g. a listener posts a song and it appears in chat, currently you have to find it in the playlist to vote - should have icon available in chat if you haven't voted yet.
Tricky bit here is getting the starred status, actually starring the tracks is pretty painless.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.