Skip to content

Instantly share code, notes, and snippets.

View schtibe's full-sized avatar

Stefan Heinemann schtibe

View GitHub Profile
@schtibe
schtibe / framework-evaluation.md
Last active May 29, 2024 06:09
Framework Evaluation

PB-514 Framework Survey

General Overview

  • Django is a general purpose Framework for building websites. Django is very feature complete and has a rich ecosystem.
  • Flask is a general purpose Framework for building websites. It is very lightweight.
  • FastAPI is a light weight Framework built for creating (REST? evaluate) APIs.

| Framework | Auth | API | DB |

@schtibe
schtibe / switch-branch.sh
Last active February 1, 2024 12:37
Git switch branch helper
#!/bin/bash
git fetch > /dev/null
# Get the list of branches from "git branch -a" using fzf for interactive selection
selected_branch=$(git branch -a | grep -v HEAD | sed 's/^[[:space:]]*//' | fzf --ansi --prompt="Select a branch (Use arrow keys): ")
if [ -n "$selected_branch" ]; then
if [ "$selected_branch" == "Exit" ]; then
echo "Exiting..."
@schtibe
schtibe / foo.vue
Last active October 23, 2023 15:27
Ignoring stuff
<template>
<!-- eslint-disable-next-line vue/no-v-html -->
<something-for-eslint />
{{
//@ts-ignore
formattedDate(collection[index].datetime)
}}</span
</template>
@schtibe
schtibe / tw-config-in-code.js
Created September 11, 2023 20:18
Use tailwind config in code
import tailwindConfig from "../../tailwind.config";
import resolveConfig from "tailwindcss/resolveConfig";
const config = resolveConfig(tailwindConfig);
@schtibe
schtibe / i3_screenshot_config
Last active August 8, 2023 23:27
Screenshot keybindings with i3 and scrot that are copied to the clipboard
bindsym Print exec "scrot -e 'mv $f ~/tmp && xclip -selection clipboard -t image/png -i ~/tmp/$n'; sleep 1; exec notify-send 'screenshot has been saved to ~/tmp'"
bindsym $mod+Print --release exec "scrot -ue 'mv $f ~/tmp && xclip -selection clipboard -t image/png -i ~/tmp/$n'; sleep 1; exec notify-send 'screenshot has been saved to ~/tmp'"
bindsym $mod+Shift+Print --release exec "notify-send 'selection will be saved to ~/tmp'; scrot -se 'mv $f ~/tmp && xclip -selection clipboard -t image/png -i ~/tmp/$n'"
@schtibe
schtibe / i3shell
Last active November 2, 2017 15:13
Spawn a new terminal in the same directory as the current one is in
#!/bin/bash
# Launch a sakura terminal with the same directory as the terminal
# that has the focus
# based on https://faq.i3wm.org/question/150/how-to-launch-a-terminal-from-here/
ID=$(xdpyinfo | grep focus | cut -f4 -d " ")
PID=$(xprop -id $ID | grep PID | awk ' { print $3 }')
SHELL_PID=$(ps -opid= --ppid $PID | tr -d '[:space:]')
CWD="/proc/$SHELL_PID/cwd"
@schtibe
schtibe / bashrc.sh
Last active July 31, 2017 09:17
Bash function to view a file in $EDITOR at a certain commit
function gshow() {
tmp_dir=$(mktemp -d)
filename=$(basename $2)
tmp_path="$tmp_dir/$filename"
git show $1:$2 > $tmp_path
$EDITOR $tmp_path
rm $tmp_path
rmdir $tmp_dir
}
@schtibe
schtibe / _scrn.sh
Last active April 4, 2017 08:35
Screen changer
#!/usr/bin/bash
# LAYOUT SWITCHER
# This script provides following functionality:
# - When detect is given, the
# - When no argument is given, make a dmenu list of the available screen layouts
# Last two options are mostly used by the udev system
BASE_PATH="/home/sh/.screenlayout"
AVAILABLE_LAYOUTS=$(ls -1 $BASE_PATH | awk -F '.' '{ print $1 }')
@schtibe
schtibe / git-fuzzy-co.py
Last active January 3, 2017 10:09 — forked from shashwatblack/git-fuzzy-co.py
Git fuzzy checkout with substring matching and case-insensitivity (and colors!)
#!/usr/bin/env python
"""
git fuzzy-checkout
Same as `git checkout branch`, but with fuzzy matching if checkout fails.
Turns `git checkout barnch` into `git checkout branch`,
assuming `branch` is a branch.
"""
import difflib
import sys
#!/usr/bin/env python
import sys
from plumbum.cmd import git
from termcolor import cprint
try:
new_branch = sys.argv[1]
except IndexError:
print("Provide a branch name!", file=sys.stderr)