Wesley de Groot's Blog
What powers this website

Back

When I started this website on 03 February 2024, it was a small project, with one php file for rendering markdown files.

This website is made in Visual Studio Code, with plain HTML, CSS, and a little bit of JavaScript (for opening the external URL's in a new tab, and add some utm tags to it, and to support comments on the blogposts).

The "backend" is written in PHP.

Page: Home

The home page is the page where the visitor (you) lands on, it shows a small introduction, my latest blog post, my latest mastodon post, a random app, and my latest github action.

Page: Blog

The blog page is the part which takes care of the blogposts, it reads the blogposts from a folder and parses them, the post format is yyyymmdd_post-title.md if a post must remain hidden it contains a ~ in the filename.

Page: Apps

The apps page is a page where I show my apps, it reads the apps from a json file and display them, if there is a bundle identifier defined, fetch data from the AppStore (such as the name, price, description, last update, versionnumber and screenshots).

example of an app:

"Calendo": {
    "name": "Calendo",
    "bundle_id": "nl.wesleydegroot.Calendo",
    "description": "Calendo: Your Simple and Smart Calendar\n\nStay organized and on top of your schedule with Calendo,\nthe ultimate calendar app designed for simplicity and efficiency.\nWhether you're managing personal appointments, work meetings,\nor family events, Calendo makes it easy to keep track of everything in one place.\n\nKey Features:\n  - Easy Event Management: Quickly add, edit, and delete events with a few taps.\n  - Scrollable month views: No more hassle of switching screens.\n  - Offline Access: Access your calendar even without an internet connection, because it uses your system calendar!\n\nWhy Choose Calendo?\n  - User-Friendly Interface: Designed with simplicity in mind, Calendo is easy to navigate and use.\n  - Reliable and Secure: We don't gather your calendar data.\n",
    "tags": [
        "iOS"
    ],
    "category": "Productivity,Utility",
    "url": {
        "AppStore": "https:\/\/apps.apple.com\/us\/app\/calendo\/id6651862759",
        "Issue tracker": "https:\/\/github.com\/0xWDG\/calendo-issues"
    },
    "screenshots": [
        "\/assets/screenshots\/Calendo_welcome.png",
        "\/assets/screenshots\/Calendo_calendar.png",
        "\/assets/screenshots\/Calendo_details.png"
    ]
}

Page: Projects

The projects page is a page where I show my projects, it reads the projects from a json file and fetch information from the GitHub API (amount of stars, forks, last update, and description).

[
    "AuroraEditor/AuroraEditor",
    "0xWDG/Admob-SwiftUI",
    "0xWDG/Apple-Music-to-Discord",
    "0xWDG/build-documentation",
    "0xWDG/CachedAsyncImage",
    "0xWDG/Colors",
    "0xWDG/DynamicUI",
    "0xWDG/FilePicker",
    "0xWDG/GameControllerKit",
    "0xWDG/iCloudStorage",
    "0xWDG/ImagePicker",
    "0xWDG/Inspect",
    "0xWDG/NetworkMonitor",
    "0xWDG/OnboardingKit",
    "0xWDG/OSLogViewer",
    "0xWDG/PHPFramework",
    "0xWDG/PreventScreenshot",
    "0xWDG/SecureStorage",
    "0xWDG/SimpleNetworking",
    "0xWDG/SwiftCronParser",
    "0xWDG/SwiftExtras",
    "0xWDG/tvOS.js",
    "0xWDG/XCUITestHelper"
]

Item: Sitemap

This is a php file that generates a sitemap.xml file, containing all the pages, blogposts, apps, and projects.

Item: RSS

This is a php file that generates a rss.xml file, containing all blogposts.

Item: GitHub API.

This is used for my GitHub profile profile, it gives a random blogpost, latest blogpost, a random app, and a random project for the README.md file.

Item: Social media API.

This script post to Bluesky, Mastodon and Threads, it uses an AI to summarize the blogpost.

Extra: Mastodon instance

This website is also running a (not yet working) Mastodon instance, I want to use this to post my blogposts to it.

Fun pages

I've made some funny pages for some HTTP status codes, such as

Read more

Share


Share Bluesky Mastodon Twitter LinkedIn Facebook
x-twitter mastodon github linkedin discord threads instagram whatsapp bluesky square-rss sitemap