New Website

6 minute read

Back in 2015, I was doing more web development related things and wanted to get more accustomed to the current frameworks and libraries most sites used. At the time, one of the main libraries was Bootstrap. Although I didn’t create anything too exciting, I made a new homepage to house my projects and given people a central location to find my work easier. (This is also around the time I first registered the atom0s.com domain.) You can see an example of that [terrible] website design here:

https://web.archive.org/web/20150218031239/http://atom0s.com/

This was also somewhat used like a resume or cover page about my current/recent work related things that are public and able to be discussed or at least mentioned/advertised.

I often dislike things I make and that was no different with this site. I never set out to create anyhing amazing or ground-breaking, but I still never cared for it. Within a few months I removed the project portion and opt’d to just have a basic ‘blog’ style setup that pulled posts from my forum instead. You can see that here:

https://web.archive.org/web/20150905021632/http://atom0s.com/

After making this transition I focused more on just posting content to the forum or having separate home pages/locations for various projects. Places like GitHub were more mainstream by this point so it was easier to just host a project there with all the available offerings of things like a wiki, free website hosting via GitHub pages, and so on. Which landed up causing things to stagnate on my site/forum a bit.

Now with the current era of the internet and being able to have various means of getting feedback/donations and support for your work through things like sponsorships (GitHub Sponsors, Patreon, etc.), it is much better to bring things back into a localized place. This allows my users/fans/sponsors to have a much easier way to find everything I am [publicly] working on. A place to find links to all my various social media, sponsorship pages, projects, etc.

As you can see now, the website has greatly changed, and this time I am letting others handle the lifting for me instead of making everything myself.

But that is not to say I didn’t put some work into things to get it to a place I prefer it.

Better Organization

One of the goals going forward is to make a more organized homepage. For that, I am using Jeykll’s categories and tags system. Although, I am probably using it less ‘correctly’ than most people would.

For categories, I plan to only really use them for overall topic relationship. For example, if I release something, that post will be marked as project and release. But wont include other things it may fall into category wise. This to help keep the list of categories small and focused.

For tags, I plan to use these as the more generalized list of keywords pertaining to the topic. So for a project/release, that may include tags such as:

  • Which language(s) it is coded in.
  • Which application/game it is related to.
  • Which field of my hobbies it is related to. (ie. game hacking, reverse engineering)

And so on. You will see these listed under each posts title on the topic list pages, and while viewing a post at the bottom of the post. You can use those to find related topics and such along with the search included with Jekyll.

Forum Closure (A Reminder..)

When I made the last main news post of the site/forum, I mentioned I was shutting the forum down and moving general discussions to Discord. This is still the case and the forums are currently in a read-only mode. Over time, I plan to move anything I posted that is considered important to this new site and will eventually close the forum completely.

This is another reminder to anyone that has used my forum to backup any information they wish before it is removed later on.

Comments

As a way to allow users to still interact on the site, I have enabled comments on this site. Jekyll comes with a handful of options when it comes to comments, however, all of them rely on third-party sites like Disqus. For those aware, Disqus and similar comment systems are heavily funded by the use of ads and tracker based scripts. They harvest data from your site, your comments, your users, etc. to fund their services which I was not interested in using.

I wanted a tracking-free means of offering comments, so I seeked other options and came upon a nice idea of using a GitHub repo to host comments via the issue tracker and GitHub Issues API. I opt’d for this method because of a few reasons:

  • I can locally query for the post comments on the server and display them statically myself. This means no tracking or extra JavaScript from third-parties you don’t want.
  • I can locally cache said comments and have control of how they are displayed, formatted and viewed on the site.
  • I can expand on the features available if I wish vs. being locked into whatever system a third-party gives me.

So for this, I wrote a two part ‘plugin’ setup for Jekyll to make use of a GitHub repo for comments.

The first part is a simple php script that takes an id param and queries a specific repo for an issue matching the given id. If found, it will query for the comment data and cache it locally on the server.

The second part is a simple javascript file that queries the php script based on information stored in the posts I make in Jekyll. A new front-matter entry is added cissue_id to mark a post as having an open discussion which points to the issue id on the GitHub repo. When the site is generated it’s hard-coded into the post to query the php script for that issues comments.

What Next?

I still need to move over a few key things I want easily accessible on the site. For example, I’d like to have a more centralized location to house projects with full informational pages for each project. Jekyll makes this easy and I don’t see any issues with adding those later when I get more time.

I’d also like to add a ‘code’ dump style page where I can post snippets of code I make or find useful to share with others. Again, I can do this with Jekyll fairly easily and create a single page that lists all code related snippets in a simple to find area.

I need to go through each previous post and open issues and add the needed comment ids to them to enable comments for past posts.

Lastly, I need to get a sponsorship/donation page setup to allow people to find ways to sponsor/donate easily as well as my promised ‘Thank You’ page for those who are sponsoring me currently.

Comments