[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] New pygame.org website



I agree with you that we don't want to host the games inside the main repo.  There was mention earlier in the thread of including the games in there. That was what I was referring to.  For example

> What are the data limits for media files in GitHub? Is there any concern that by merging in all of the games into a single repo that you'll end up having to pay monthly for storage? If so, who would pick up that bill? What happens if it isn't paid, do we lose access to the games?

 The advantage I see of requiring users to host at github in a separate repo vs allowing arbitrary hosting is that you do not have to worry about spam links nearly as much. Just ask user for the repo name and that's it. The script that processes the requests can then verify that the provided name is a valid github repo and that it meets the standard guidelines and pull the readme in automatically as well as the link.  It could also show all releases on the pygame page just like the 'releases' tab, and we could promote content that is active whenever the static site generator runs (it could check each repo for activity).

When generating the site, if anything doesn't match the templates, throw it out automatically.

That also allows users to leverage github tools for reporting malicious content, and makes it much more likely that the content & links on the site will be accessible.  Allowing users to self host content is why, when you go back and look at some old forum posts from 5+ years ago online, none of the images load.    here's an example, I checked about 10 random project IDs and found one where the content is no longer hosted on the site: http://pygame.org/project/1003/  If there is some interest I could definitely scan all the projects to determine how much dead links there are on the current site.

Regarding Angular, it's a bit of a mischaraterization to say there's equivalence between an angular search of content and ctrl+f. For one, with angular only matching content could be shown, and different metadata could be used for searching (search on title, description, library, author, etc.) Ctrl+f would require the entire game list to be loaded with all content.  However, I will admit I hadn't seen the new hifi site until just now and after seeing it I completely understand your concerns about things getting out of control. Fair enough. I think a static, clean site is a great starting point. Github pages is great too. 

So has anyone started on any of this? is there some community controlled github that we could start with?  I'd be interested in contributing some effort to this.  Wouldn't mind learning some python static site tools.  Mostly do C# these days but still have the love of Python from when I first started developing software.



On Dec 23, 2016 3:47 PM, "Radomir Dopieralski" <pygame@xxxxxxxxxxxx> wrote:
On Fri, 23 Dec 2016 14:01:57 -0600
Luke Paireepinart <rabidpoobear@xxxxxxxxx> wrote:

> Can't we just make it so only a few known-good users have access to
> merge to master and then use pull requests for edits to the site from
> the community?  this is a common way to do it both for sites and
> otherwise - Ionic does their tutorial websites this way.

This is not the problem, and yes, it has been done this way so far, and
it will continue to be done that way, most likely.

> The only real issue I would see is that you wouldn't really want a
> single repo with binaries or even of source of all games submitted.
> That would clutter up the repo for the website with essentially
> backend data edits.

We don't want to host those games. As people have here already noted
multiple times, there is no shortage of places where you can host the
files and source code for your games. All we need is a link, a
description, and perhaps a screenshot. That's it.

> I would suggest making a template repository for users to fork on
> GitHub that would include an editable readme.md with a good starting
> framework. They could update the readme to include descriptions of
> their games and these could be pulled into a list.

It's not necessary for their projects to follow any particular
structure or template. We could, however, have a template for adding an
entry for your game (title, author, link, description, screenshot,
etc.) to the list, and then have that included in the static generation
of the website.

> Regarding static vs dynamic sites and games lists, we could
> preprocess the games list into one big json file and then just
> implement the game list view as an Angular application.  That would
> allow sorting/filtering/searching of content with no dynamic
> processing on the server side whatsoever - just when a new project is
> accepted, that json file would be updated to include the link and
> some tags about each game.

Please, no Angular, no leftpad.js, no client-side use-all-cpu
works-only-in-my-favorite-browser unusable disabled-hostile confusing
shiny technologies. That's exactly how the current website was created.

There is already a perfectly good way of searching a static web page,
without any processing on the server, built into your browser -- you can
access it with ctrl+f.

Let's first build the simplest possible thing, and we can refine it and
add bling if we have spare resources for that.


As a side note, what are we going to do with the existing game list?
Are we going to import/migrate it to the new website?

--
Radomir Dopieralski