Monday, October 19, 2020

Polishing the static website takes time

 I think the largest problems with building the new static website are solved and most of the structure is in place. I can render links, icons, text, lists and combinations thereof; I have a working template system and a split of the entries in games and frameworks/tools. Games can be filtered by letter, by genre, by programming language and by supported OS platform. Additionally there is a developer index and an inspirations (other games) index, all with backlinks. The layout is kind of looking well. I use icons in an icon-font to kind of improve the visualization. So far, so good.

Now the details are still to be filled in. Adding a bit more information here and there. Choosing more icons (for the genres), improving the layout (adjusting the size of the programming languages shown according to how many entries there are for each language), creating the statistics page, filling the contributions page with content, creating a cover picture as a collage from many pictures of OS games, ... and that will still take a couple of weeks.

My new dead line, beginning of November. On the plus side: I'm really proud of how nice it looks.

 





Wednesday, October 7, 2020

Icons and more

Everything always takes a bit longer than estimated before because there are always details that are missing in the beginning. One detail here for the new website for the OSGL was icon fonts. I started with bulma as CSS framework, then got to know fontawesome icons, then found many other sources like ionicons, material design icons, iconarchive.com or game-icons.net and finally came to "Optimize Font Awesome". From there I arrived at IcoMoon, a free service that allows you to create your own optimized webfonts by selecting only the needed icons from other fonts. I tried it and so far I'm very happy with it.

Now I use icons. The only problem is that I find the layout more confusing with icons. Will have to tinker more before it can be published.

Friday, October 2, 2020

Quite advanced in building a new website for the OSGL

 In the last days I got much more experience with the CSS framework Bulma and with the template engine Jinja. Bulma does the job quite nicely (some things of it I don't need) while other things like colors I need to add myself and sometimes I would wish for even smaller sizes (of tags for example). Jinja by itself has a certain way of doing things, but I think I figured it out by now and are capable of writing fairly efficient templates.

Now the big issue here is the wiring. There are games and there are frameworks/tools. Games are sorted by alphabet, genre, programming language and OS support, frameworks/tools are only sorted by alphabet. Both have developers and can be inspired by original software. That means there are additional developer and inspiration categories, which are also alphabetically sorted. The linking is also backwards, i.e. from a developer to the developed games or frameworks/tools and from the inspiration to the inspired games or frameworks/tools. The data itself is residing in the markdown files in the Github repository, but for the HTML output, I need to get this links right. While some of it already works, some more wiring still needs to be done.

And then I can start polishing the look and layout of the entries and the static pages. The internal data representation is dictionary / keywords based (in Python) and then Jinja templates and macros do the rendering as HTML with HTML tags and CSS classes.

Finally, I would like to get a few more images (using icon fonts for symbolizing the OS and other stuff, info graphics for the statistics page and maybe game images (but at least a collage of images for the main page). Then some additional text here and there and a dynamic JavaScript table (for searching). And then I'm done and it can go live and I can talk about it.

Two more weeks at the very least, unfortunately.

Friday, September 18, 2020

In the middle of building a new website for the OSGL

For the OSGL, I'm currently building a new static website with Python using the Jinja template engine and the Bulma CSS framework. First I learned about these things and now I kind of became productive. The output does not yet look nice, it's more like most of the needed information is present but it doesn't look nice in any way. Links between the games indices and the games entries are still missing, the games entries need a better format, many urls are just printed and stuff like this, but it's just more of what is already there.

In the end I will try to incorporate a few more pictures and a nicer layout and lots of hints that the content can easily be edited by contributing. And then in say 1-2 weeks, I might be ready to green-light it.

Friday, September 11, 2020

Ready to start building a better OSGL website

For the open source games list (OSGL) that I maintain, I'm finally ready to build a more comprehensive website programmatically. So far, it's a single page with a JavaScript data table showing >1000 rows. That was not a good presentation.

I now want pages for every game, every original inspiration and every developer as well as statistics pages and category pages, each with smaller JavaScript data tables and links between them.

The source of the data are the Markdown files in the OSGL as well as the reading and synchronization scripts in Python using a parser for the Markdown files.

Now I will write templates (using Jinja2) to export the data to HTML and use a clean CSS framework and data tables. It will probably still be hosted on GitHub, unless I find a better place.

Tuesday, August 25, 2020

Maintaining the open source games list becomes more and more work

For one week now I'm updating the OSGL, replacing links, searching for repositories, updating information. With 1200 games in the database, that's just more work than it used to be.

I had hoped for others to take over some of that work, but so far that hasn't happened.

I will certainly finish improving the HTML output and making the project more well known.

But then I want to start with building and fixing some of these games. That was always the goal, not only to have a list, but to use that list.

My efforts to keep the list updated will therefore be limited in the future. I will concentrate on choosing some projects, making them build on modern systems as well as fixing the easy to fix things and offering builds.

If others step in and help keeping the database of open source games updated, that's fine by me.

Saturday, August 15, 2020

Finished Lark GUI testing tool

For the open source games list (OSGL), I wanted to use the Lark parser to read and write entries written in some kind of markdown syntax with conventions. For developing the Lark grammar I needed a system to test Lark grammars on test content interactively. I started writing a GUI around the Lark parser using PyQt5 and it's now in a finished state. It's published at https://github.com/Trilarion/lark-tester under the MIT license, so people can use it if they want to.

I will now continue to use it in order to better maintain the OSGL.

Wednesday, August 12, 2020

Back to opensourcegames (OSGL)

After half a year long break, I started again looking at the opensource games list Github repository and static page that I built and maintained over the last two years. Interestingly, I forgot quite a couple of things (conventions like which keywords are used to denote multiplayer capability or how some code dependencies or licenses are specified). Even I, the maintainer, needs some time to get into the project again. I should make a list of all the things and add documentation about it.

Anyway, the first steps will be some cleanup, checking links and repositories, synchronizing with osgameclones.

What I really want to do is not adding more games, but rather starting to bring old games back to life and write an article about the whole journey. After a couple of weeks, cleaning the database, polishing the web output and promoting the project, I will move to the next stage, relying on others to keep the database updated.

Before I will finish the Lark parser testing tool that is quite advanced and tell the maintainer of the Lark parser about it. It should only take a couple of days.

I also want to get the open source kids apps list started.

There is really lots of work available. More than I could ever do. I will never run out of it.

Tuesday, February 4, 2020

Started a Lark GUI testing tool

In the last weeks I read about parsers and finally settled on Lark. It helps me manipulating and extracting information from the entries of the opensource games list that I built. In order to be faster in developing parser grammars, I wrote a small PyQt based tool that allows to quickly check the output of a given grammar applied to given content within a GUI.

I also decided to make the effort public, so development will continue on the Github page of the lark-tester. It may become useful for others.

Friday, December 20, 2019

A summary of 2019

The year is coming to an end, and because the Open Source Games List (OSGL) has seen quite a development this year, let's summarize the achievements a bit.

In the first months of the year the project didn't see any activity, but from June on I got hooked. Synchronizing (mostly importing) game entries from opensourcegameclones and libregamewiki and further processing of the backlog resulted in an increase of game entries from 400 in January to ~1300 now. This is a huge increase and it should make the OSGL one of the most comprehensive lists (if not the one) of open source games information.

And while doing this I also improved the quality of the information contained. Unclear license information have been clarified. CVS, Mercurial, Bazaar repositories or source releases have been converted to Git. Developers have been contacted. Keywords have been added.

Modest advertisement on Reddit or Freegamedev.net have increased the popularity of the list.

One thing remained unchanged though, that is the web output, which most people should use to search the list. And this will also be the focus early on next year. The plan is to make most of the information contained in the database nicely visible.

After that comes the fun part, i.e. improving the games. Can't wait for it.