Skip to content

Instantly share code, notes, and snippets.

View pingiun's full-sized avatar

Jelle Besseling pingiun

View GitHub Profile
@pingiun
pingiun / longtweets.js
Created December 11, 2022 17:45
Long Tweet Remover userscript
// ==UserScript==
// @name Long Tweet Remover
// @version 0.1
// @description remove tweets with more than 280 characters
// @author Jelle Besseling
// @match https://twitter.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=twitter.com
// @grant none
// ==/UserScript==
@pingiun
pingiun / emojiencode.py
Last active September 22, 2022 18:36
Emojiencode can be used to encode a hash in emoji, like Telegram is doing for secret voice calls
# -*- coding: utf-8 -*-
# This alphabet is handpicked to be visually distinctive
_alphabet = ['☕️', '🐜', '✉️', '🎋', '👟', '📺', '😅', '✌️', '🌰', '🍇',
'🐶', '👢', '💉', '💈', '⚡️', '🌹', '🗽', '👌', '💔', '🎈',
'🥑', '⌚️', '🚿', '🐫', '🔧', '🔌', '😈', '💳', '😊', '👍',
'🍞', '😘', '🎯', '⛄️', '🔦', '🐳', '🍌', '‼️', '🥝', '✂️',
'🎄', '💥', '🍷', '🚦', '📬', '🎡', '🎆', '🔍', '🍻', '🏭',
'🎶', '💡', '🏄', '👂', '🗡️', '🍒', '👑', '🚃', '🙏', '❌',
'💾', '🙋', '👸', '🔪', '👎', '🌊', '🍕', '⚽️', '🎁', '🏈',
from sqlalchemy import Column, PickleType
def upsert(obj):
"""Inserts the `obj` or updates if it already exists
Postgresql is the only database that supports upserts like this, but sqlite is used locally so a "hack" is used to support
an alternative check and update/insert method. This cannot be used when multithreading."""
# SQLalchemy model objects have the table object in __table__
table = obj.__table__
# Filter out private values from the object
import re
import sys
from datetime import datetime
from b2.api import B2Api
def parse(inp, mformat=None, thing=None):
if thing is None:
thing = 'th'
if mformat is None:
@pingiun
pingiun / README.md
Last active June 8, 2021 22:50
Zig sha256 and sha512 implementations without unnecessary code duplication

To learn Zig I implemented some crypto functions in Zig. It uses unique Zig comptime features to reduce code duplication

@pingiun
pingiun / zoombot.py
Last active May 14, 2021 22:41
FaceZoomBot uses facerect on mashape.com to zoom in on faces in photos on Telegram (@FaceZoomBot)
#!/usr/bin/env python3
# MIT License
#
# Copyright (c) 2016 Jelle Besseling
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
FROM python:3
MAINTAINER Jelle Besseling <jelle@pingiun.com>
COPY . /app
WORKDIR /app
RUN pip install uwsgi && pip install -r requirements.txt
{ config, pkgs, lib, ... }:
let
helios-src = builtins.fetchTarball "https://github.com/pingiun/helios-server/archive/147da23bd9097c16c94a24cf4cc98bd709a35393.tar.gz";
helios = import helios-src;
user = "helios";
db-name = user;
@pingiun
pingiun / bf.c
Last active October 7, 2020 23:22
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
// initialize the tape with 30,000 zeroes
unsigned char tape[30000] = {0};
// set the pointer to point at the left-most cell of the tape
unsigned char* ptr = tape;
@pingiun
pingiun / Habits.sol
Created August 21, 2020 17:00
Habits testing
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.7.0;
import "Owner.sol";
/**
* Track habits with a financial stake if you fail.
*/
contract Habits is Owner {
struct Habit {