uberVU / elasticboard

Dashboard that aggregates relevant metrics for Open Source projects.
http://elasticboard.mihneadb.net/landing.html
MIT License
61 stars 7 forks source link

Live "try your own" demo #77

Closed mihneadb closed 10 years ago

mihneadb commented 10 years ago

Have a public elasticboard instance where people can input their own repo that they want to try out with elasticboard. The instance will index the latest available data, display it and drop all of it after ~1h.

mihneadb commented 10 years ago

We should have an endpoint that allows creating a special disposable river ("disposable: true") and a cron job that runs every hour, looks at the disposable rivers and checks their create time. If it's longer than 1hour, perform the equivalent of remove_repo.

mihneadb commented 10 years ago

We also need a simple, clean, landing page (with an input form) for this. Something like "Enter owner/repo: [ ] / [ ] or Check out the existing data (link to currently available repos". After a user enters their owner/repo pair, we should redirect them to #/owner/repo and show a message like "No data available (yet). Try again in a bit", or something like that.

@piatra, can you help out with this? I started the try-your-own branch for this. You can assume there will be a API_SERVER/add_temporary_river endpoint where you send a pair of "owner" and "repository" via POST.

mihneadb commented 10 years ago

Added the endpoint and file to be called by cron for hourly removals, see https://github.com/uberVU/elasticboard/tree/try-your-own

mihneadb commented 10 years ago

Ok, added a dummy try.html for the landing page. @piatra will help with making this more welcoming. There are now friendly error messages in place for when an user tries to access a repo while there's no data (I'm thinking this will happen after we redirect a user from the try page, after they add their repo).

mihneadb commented 10 years ago

224f902 introduces auto retry for this usecase

mihneadb commented 10 years ago

Updated the try-your-own branch with the latest. @piatra, we need now to perform a quick check[1] that the input that the user gives is correct (i.e. the repo exists and it is public) and if so show a "go" button, if not show some feedback ("bad repo name"). When the go button is pressed there should be a POST (see above) and, after a short delay (spinner maybe?), a redirect to APP_URL/#/$owner/$repository.

Sounds good?

[1] or we could go with autocomplete for repos, however you wish :)

mihneadb commented 10 years ago

Ongoing in #86

mihneadb commented 10 years ago

Done: http://elasticboard.mihneadb.net/landing.html