Skip to content
/ mna.dev Public

Mirror of git.sr.ht/~mna/mna.dev

Notifications You must be signed in to change notification settings

mna/mna.dev

Repository files navigation

mna.dev

Netlify Status

This is the source repository for my mna.dev personal website. It uses a number of tools to generate data sources for relevant links about me (e.g. twitter account, blog, articles, popular repositories, etc.) and this gets turned by a build system into a web page that presents those data sources as clickable "tiles" or "cards".

install and generate

$ npm install
# installs development dependencies, populates node_modules

$ npm run build
# copies assets, generates css, js, html in public/

$ npm run serve
# starts a local web server to browse the static website, installs
# Go dependencies based on go.mod if needed

$ npm run generate
# runs the commands to retrieve data from the supported sources,
# updating existing ones as needed

$ npm run clean
# removes the generated data and files in the public/ directory

$ npm run watch
# watch for changes and run corresponding build task live

Requires the following environments to be set (e.g. via an .envrc file managed by direnv):

  • GO111MODULE=on (until this is the default)
  • GITHUB_API_TOKEN
  • SRHT_API_TOKEN
  • GITLAB_API_TOKEN
  • BITBUCKET_API_TOKEN

TODOs

  • Grab image(s) when extracting the data, render more twitter-like cards
  • Figure out how to re-generate data automatically and publish (eventually)
    • systemd timer unit to call a sr.ht build via api, run npm run generate:data, commit and push on success