Skip to content

Instantly share code, notes, and snippets.


Kiara Grouwstra KiaraGrouwstra

View GitHub Profile
# prerequisite: create $censored_pdf from $original_pdf using chrome print pdf -> tick 'print as image' (linux chrome) -> save as pdf
# split
for page_range in ${original_page_ranges[*]}; do
pdftk $original_pdf cat $page_range output $page_range.pdf
for page_range in ${censored_page_ranges[*]}; do
pdftk $censored_pdf cat $page_range output $page_range.pdf
View buurten-utrecht.geojson
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.


tool cuts non-destructive stealthy ease system-agnostic lock-agnostic ease to get how to get
skeleton/master key higher 😢 obtained by brute-forcing higher-cut permutations from regular key using privilege escalation
regular key lower 🙁 - given key photo: teleduplication (no code, paper, manual demo)
- if you can see lock: look up key number in a database - 3d-print given pin positions: autokey3d, keysforge
[bump key](http:
View calendar.js
const { google, outlook, office365, yahoo, ics } = require("calendar-link");
const event = {
start: "2021-12-31 18:00:00 +0200",
duration: [1, "hour"],
title: "",
location: "",
description: "",

Dit is een samenvatting van de content van Arjan Lubach's Keezer's quest, gepresenteerd bij Zondag met Lubach. Ik vond deze content in een javascript file, die ik vervolgens wat voor leesbaarheid bewerkt heb (zie scriptje) om hier in yaml formaat te presenteren, voor wie graag alles wil kunnen lezen zonder honderd keer te moeten spelen. :) De content is in spreadsheet formaat (partij vs partij) tevens hier te vinden.

KiaraGrouwstra /
Last active Feb 24, 2021
spotify clone brainstorm

author-friendly spotify clone

observation: if users wanted not to compensate authors, they already could, so the goal is to facilitate fair reward rather than combat piracy.

  • UI: clones aplenty
  • payment models
    • simple: Payment Request API
      • crypto not standardized into this particular API yet, so far just fiat handlers (cc, banks, apps)
      • recurring payments not standardized in an API yet
  • for cheapskates: ad-based
KiaraGrouwstra / mhw-moves.cypher
Created Jan 28, 2021
analyzing Monster Hunter World combos using graph database Neo4J
View mhw-moves.cypher
// clean db
// flowcharts:
// motion values:
// motion frames: ???
// Long Sword
KiaraGrouwstra /
Last active Feb 6, 2021
creating a video from an image plus audio files
# assumptions: audio files in .flac, no other flac files, named alphabetically
# cut to part of a recording
ffmpeg -ss mm:ss -to mm2:ss2 -i in.flac -codec copy out.flac
# replace a segment
ffmpeg -to mm:ss -i in.flac -codec copy pre.flac; ffmpeg -ss mm2:ss2 -i in.flac -codec copy post.flac; ffmpeg -f concat -safe 0 -i <( for f in {pre,replacement,post}.flac; do echo "file '$(pwd)/$f'"; done ) -c copy out.wav; flac out.wav; rm pre.flac; rm post.flac; rm out.wav
# get chapter timestamps for youtube
for song_file in *.flac; do echo $song_file; done
duration=0; total=0; rounded=$total; hours=0; mins=0; secs=0; for song_file in *.flac; do rm -f tmp.wav; echo "$hours:$(printf "%02d\n" $mins):$(printf "%02d\n" $secs)"; flac -d -o tmp.wav $song_file > /dev/null 2>&1; duration=`soxi -D tmp.wav`; total=`echo "$total + $duration" | bc`; rounded=`printf "%.*f\n" "" "$total"`; hours=`expr $rounded / 3600`; mins=$((`expr $rounded / 60` - $hours * 60)); secs=$(($rounded - $hours * 3600 - $mins * 60)); done; rm -f tmp.wav
KiaraGrouwstra /
Last active Jan 19, 2021
trans/queer rechten in politieke partij programma's

zoekende op transgender/trans/lhbt...


niet genoemd


enige lhbt mention is "geen speciale LHBTI-convenanten"


paar mentions mbt discriminatie

KiaraGrouwstra / linkedin-dark.css
Last active Jan 11, 2021
linkedin dark theme for use with stylus/stylish browser extensions
View linkedin-dark.css
@name LinkedIn - dark
@description This is a black and very dark gray LinkedIn style with a lot of attention to detail. Like the rest of my styles, it's just a basic change of paint without any major remodeling.
@author Kete, Kiara Grouwstra
@include http://**
@include https://**