My personal site.
This is my personal website, which is also intended to be a more or less generic template to build more personal websites with.
It provides the following information:
- Personal details (name, profession, pronouns)
- Social media details (Bluesky/Twitter (through nitter)/Instagram/Mastodon, Discord/Matrix/Signal, phone/mail)
- Latest GitHub commit
- Livestream (Twitch & YouTube) status
- Articles with comments
- Latest toots & tweets
- Project list (fetched from GitHub)
The web app is available on GitHub releases in the form of a static .tar.gz
archive; to deploy it, simply upload it to a CDN or copy it to a web server. The release also includes the project list generation tool, API server and proxy. For most users, this shouldn't be necessary though; simply visit the public deployment to access it:
Click on an image to see a larger version.
- gohugoio/hugo provides the static site generator.
- zedeus/nitter provides the Twitter API.
- mmcdole/gofeed provides the RSS library for nitter.
- google/go-github provides the GitHub API library.
- nicklaw5/helix provides the Twitch API library.
- googleapis/google-api-go-client provides the YouTube API library.
- giscus/giscus provides the comment system.
- The open source PatternFly design system provides the components for the project.
To contribute, please use the GitHub flow and follow our Code of Conduct.
To build the site locally, run:
$ git clone https://github.com/pojntfx/felicitas.pojtinger.com.git
$ cd felicitas.pojtinger.com
$ make depend
$ export GITHUB_API=https://api.github.com/ GITHUB_TOKEN=your-github-api-token YOUTUBE_TOKEN=your-youtube-api-token TWITCH_CLIENT_ID=your-twitch-client-id TWITCH_CLIENT_SECRET=your-twitch-client-secret MASTODON_SERVER=https://mastodon.social MASTODON_CLIENT_ID=your-mastodon-client-id MASTODON_CLIENT_SECRET=your-mastodon-client-secret MASTODON_ACCESS_TOKEN=your-mastodon-access-token BLUESKY_SERVER=https://bsky.social/ BLUESKY_PASSWORD=your-bluesky-app-password SPOTIFY_CLIENT_ID=your-spotify-client-id SPOTIFY_CLIENT_SECRET=your-spotify-client-secret
# This is only necessary if you want to use the Spotify integration - adjust your redirect URL accordingly
$ export SPOTIFY_REFRESH_TOKEN=$(go run ./cmd/ps-spotify-get-refresh-token --client-id=${SPOTIFY_CLIENT_ID} --client-secret=${SPOTIFY_CLIENT_SECRET} --redirect-url='http://localhost:1318/callback')
# If you want to rebuild the CV, else skip this step
$ make build-cv
$ make dev
Personal Site (c) 2024 Felicitas Pojtinger and contributors
SPDX-License-Identifier: AGPL-3.0