jcraigk / phishin Goto Github PK
View Code? Open in Web Editor NEWAn archive of live Phish audio
Home Page: http://phish.in
License: MIT License
An archive of live Phish audio
Home Page: http://phish.in
License: MIT License
Also check Outro instances
I'd like to add playlist playback to PhishOD. Could an API be put together?
Someone put together playlists of all the key and noteworthy jams from the charts: http://forum.phish.net/forum/show/1375481252#page=1
Also the guy had to split it over 7 playlists. Any way to increase that limit?
URL: http://phish.in/api/v1/tours.json?per_page=1
Dates have recently changed to be in this format (updated_at
): 2018-08-12 15:57:38 UTC
. This is strange and non-standard. Can we go back to ISO8601?
Tracks can have multiple song associations. For example https://phish.in/1991-07-21/mikes-song-i-am-hydrogen-weekapaug-groove. When hovering over that track and using its context menu, This song...
pertains only to Mike's Song. That single link should be replaced with a link for each song.
Also we should try to auto-detect browser location and start there on the map. Fallback to IP if easy.
Add starts_at_second
and ends_at_second
to track_tags
. Optional. Allows for tagging specific sections of tracks. Measured in seconds from start of track. If only one is present, it's implied that the tag extends from beginning or to end of track.
Question: how best to handle segue
tags that cross track boundaries? Naive implementation would create two unrelated tags and the system could imply connection by lack of ends_at_second
on first and starts_at_second
on second one, but not sure how queryable that would be...presumably, the tracks will be cut such that the bulk of the segue will be in one or the other track so hopefully this is a moot issue.
https://github.com/gregnavis/active_record_doctor
Especially want to hit unique indexes on uniqueness validations.
Import this content https://docs.google.com/spreadsheets/d/10boHKbXnR7V5qFCUc7rtDVBrFg-jmgoOWQLcLRWdz6o/edit#gid=0 into this one https://docs.google.com/spreadsheets/d/1WZtJYSHvt0DSYeUtzM5h0U5c90DN9Or7ckkJD-ds-rM/edit#gid=0.
Best approach is probably CSV export first.
In many cases the view templates use arbitrary header tags and names of classes for setting widths of items in lists. It's overly complex and should be simplified. We may want to investigate using tables, since we are literally presenting tables of data.
Seems there is no counter_cache on Tour.shows_count, yet resetting it does not work directly through AR and it's wrong in some cases. We should ensure it is accurate.
Import via CSV format or can we directly query the google docs API to keep the library in sync with live data?
Obsolete if #42 is implemented.
Expected behavior:
Click on a the costume set tag from a set list and be taken to the http://phish.in/tags/costume-set.
Actual behavior:
When you click the tag from a set list (e.g., http://phish.in/2016-10-31) you get taken to http://phish.in/tags/costume%20set which results in a 404.
Once a lot of Tags are applied to the content with lengthy Notes and Transcriptions fields searchable, we'll need a way to page through the results.
User registration, sign in, sign out, forgot password flow, update details
Liking show/tracks, browsing liked tracks/shows
Creating, editing playlists
Ensure contributor section is filled out and apply permissive license (MIT preferably).
Bustout will require defining a show gap (maybe have multiple tags like Bustout 150, Bustout 200, etc). Debut tags are be split by Debut, Phish Debut, and First Known.
"you can parse 'debut' from .net too, where they're very carefully curated - there's debut, phish debut, first known version etc. and they mean specific things
for debuts, they're numbered as show footnotes as well
http://phish.net/setlists/phish-december-02-1983-harris-millis-cafeteria-university-of-vermont-burlington-vt-usa.html
and those are returned per song in API responses IIRC" - ucpete
http://phish.in/api/v1/show-on-date/2013-07-31
The year listing works just fine and shows the correct ID for 2013-07-31 but for some reason show-on-date
doesn't work properly unless .json
is added to the end
I use this feature for deep linking and showing the top shows so it would be awesome if this could get fixed :)
http://phish.in/api/v1/tours.json
Summer/Fall 2013 show negatives numbers in the show_count
field.
This is causing alecgorge/PhishOD-iOS#32
Don't compute this each time...cache it!
Currently we use a field called missing
with a scope called avail
. We should simplify these into published
and remove all unpublished shows from the dataset.
Before 2016 Let's Go referred to the cover, so that Song needs to be split into two.
Use Travis, Circle, or similar service to setup (free) automated builds for specs on PRs.
Can I get a route that shows all the shows that occurred on a particular date in any year? Shows "on this day in phishtory" is a very popular feature request.
Example URL: http://phish.in/api/v1/shows-on-date/xxxx-12-31.json
or http://phish.in/api/v1/search/xxxx-06-19.json
Search should include tag names/descriptions and instance notes. Search results page should include relevant snippets from instance notes if present.
Looks like VenueRenames are causing N+1 like queries on year pages
To accommodate multiple performances per day, remove date
field and add started_at
DateTime and slug
. Slug should be the date as it is now.
To allow for correct naming of venues at the time of a given show (Deer Creek vs Klipsch Music Center, for example), create VenueRename model with renamed_at and name. Then on show output pages, display the relevant name of the venue instead of the original one.
Data population will require naming the actual Venue with the original name and then adding VenueRename records for each rename chronologically.
List each rename with date on the Venue show page.
Allow for gapless playback on the web-based player.
#333 switched from SoundManager2 to native web audio. We use a single audio
element and switch the src
on it and attach the audio context for each track. We should investigate ways to preload audio and/or use multiple audio
nodes.
Add user_id
to track_tags
and show_tags
and add UI to add/remove tags on shows and tracks, including start/end times, if relevant. Description encouraged but optional. Choose from existing set of tags, send email to request new tag.
Can you expose the taper's notes (just the txt file from the download from the spreadsheet) in the API in some way?
If you can't, do you use the downloads from the spreadsheet? I have the entire spreadsheet downloaded so I can send you an initial seed of all of the txt files or even host my own service to pull that information from.
Refactor rake phishnet:sync_jamcharts
logic into JamChartsImporter
service object with spec.
Add simple API keys and require their usage...will need to notify existing users, especially Relisten. Accept applications via email and update the API docs with request instructions.
This appears to be the same issue I sent an email about a while back. Tracks are missing from their show.
The new one I found is: http://phish.in/1994-06-11
Do you have any destroy routes exposed?
Pull the collection of libs that make up the show importer into more organized service objects and get them covered.
Allow phish.in/2018-10-31/set-2 (translate to first track in that set)
Can I get a route to show all shows on July 7th for example? I would like to be able to use it as an "on this day in phishtory type thing". Perhaps a calendar too.
Now that mp3 tagging is tested/fixed, we should re-apply the ID3 tags to the entire library and re-backup the library to S3.
The "add to playlist"/"share"/"lookup at phish.net" dropdown in the lefthand column on a show's page (http://phish.in/2013-12-29) is getting rendered underneath set list content area.
Phish.net returns duplicate JamCharts tags for the same tracks sometimes. Verify with the Phish.net folks that this is legit and adjust accordingly.
Examples:
Updating 2010-10-26 => Makisupa Policeman (25737)
Updating 2010-10-26 => Makisupa Policeman (25739)
Updating 2010-10-26 => Makisupa Policeman (25737)
Updating 2010-10-26 => Makisupa Policeman (25739)
Updating 2010-10-26 => Llama (25726)
Updating 2010-10-26 => Llama (25744)
Updating 1993-02-23 => Weekapaug Groove (5558)
Updating 1993-02-23 => Weekapaug Groove (5560)
Updating 1993-02-23 => Weekapaug Groove (5558)
Updating 1993-02-23 => Weekapaug Groove (5560)
Indicate which song is a cover vs original and provide filter control on /songs.
To support #48 and stop using the overloaded term show
.
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.