Skip to content

Instantly share code, notes, and snippets.

@dzharii
dzharii / copy_page_link_as_markdown.js
Created December 20, 2022 23:54
This JavaScript snippet is a browser bookmarklet, which copies the active browser tab / page title and url as a markdown link into the clipboard. If some text is selected, it will copy the selection as a markdown quote. This is a hacky way to write javascript to write an entire script in one JavaScript line.
@dzharii
dzharii / emoji_bookmarks_8_22_22.html
Created August 23, 2022 04:52
Mark opened tab title with emoji 🥑: Open "Bookmark Manager"; From the top-right "⬤⬤⬤" select "import bookmarks"; From the folder "Imported" in Bookmark manager -- drag 🥕 folder to somewhere
<!DOCTYPE NETSCAPE-Bookmark-file-1>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<TITLE>Bookmarks</TITLE>
<H1>Bookmarks</H1>
<DL><p>
<DT><H3 ADD_DATE="1661226783" LAST_MODIFIED="1661226843">🥕</H3>
<DL><p>
<DT><A HREF="javascript:(() => setTimeout(() => document.title='💖'+document.title))()" ADD_DATE="1661226843">💖</A>
<DT><A HREF="javascript:(() => setTimeout(() => document.title='💚'+document.title))()" ADD_DATE="1661226843">💚</A>
<DT><A HREF="javascript:(() => setTimeout(() => document.title='💛'+document.title))()" ADD_DATE="1661226843">💛</A>
// Usage:
// node randcat.js -p 8765 -- starts http server
// node randcat.js -- generates bookmarklet
if (typeof process !== 'undefined' && process.exit)
(async () => {
const [, , portK, portV] = process.argv;
const mode = (portK === '-p' && portV) ? 'server' : 'bookmarklet';
const fs = require('fs').promises;
let cont = (await fs.readFile(__filename)).toString();
cont = cont.replace(/^.+?(?=\(\(d\) => \{)/s, '');
if (typeof process !== 'undefined' && process.exit)
(async () => {
const fs = require('fs').promises;
let cont = (await fs.readFile(__filename)).toString();
cont = cont.replace(/^.+?(?=\(\(d\) => \{)/s, '');
cont = cont.replace(/(?<!(?:function|typeof|const|let))\s+(?=(?:[^\'"]*[\'"][^\'"]*[\'"])*[^\'"]*$)/gs, '');
console.log('javascript:' + cont);
process.exit(0);
})();
else
@dzharii
dzharii / promiseState.ts
Created July 20, 2020 23:33
A way to query Typescript/JavaScript/NodeJS Promise state
/**
* The following doc describes one way how to path Promise to return it's state
* * https://stackoverflow.com/questions/21485545/is-there-a-way-to-tell-if-an-es6-promise-is-fulfilled-rejected-resolved
* * https://ourcodeworld.com/articles/read/317/how-to-check-if-a-javascript-promise-has-been-fulfilled-rejected-or-resolved
*
* I personally do not like monkey-path approach, on the one hand... and it simply
* does not work on the other hand.
*
* Solution that works for me is to make an explicit wrapper.
*
@dzharii
dzharii / microsoft_rest_sdk_hello_world_example.cpp
Created May 25, 2020 23:27
microsoft_rest_sdk_hello_world_example.cpp
#include <iostream>
#include <cpprest/http_listener.h>
#include <cpprest/json.h>
using http_listener = web::http::experimental::listener::http_listener;
using methods = web::http::methods;
using http_request = web::http::http_request;
using status_codes = web::http::status_codes;
using http_response = web::http::http_response;
data:text/html,<script>setInterval(() => document.body.innerHTML = ["Europe/Amsterdam", "America/Los_Angeles"].map(tz => { return {tz: tz, d: new Date().toLocaleString("en-US", {timeZone: tz}).toLocaleString()}}).reduce((p, {tz, d}) => p + `<h1>${tz}: <b>${d}</b></h1>`, ''), 1000)</script>
@dzharii
dzharii / JSON
Created March 5, 2019 04:31
Bookmarklets
data:text/html;charset=utf-8;base64,PGxpbmsgcmVsPSJpY29uIiBocmVmPSJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhFQUFRQVBJQUFBQUFBUDlxQVArN0FQeWZxT1BqNC8vLy93QUFBQUFBQUNINUJBa3lBQVlBSWY4TFRrVlVVME5CVUVVeUxqQURBUUFBQUN3QUFBQUFFQUFRQUFBRDZtaG1abWJHR0dPTU1jWVlZNHd4Z0dFWWhtRVlobUVZaG1FQUFtQVlobUVZaG1FWWhnRUlBZ0hBWURBWURBYUR3UUFBQkFBQUFjQmdNQmdNQm9NQkVBZ0VBZ0VBd0dBd0FBQUdnd0VRQ0FRQ2dVQUFZQUFRQUFZRElCQW9GQW9CQVFFQkFBUUVBQVlHQUFFQkJRQUZBUUVCQVFFRUJBQUdCZ0FEQVFVRkJRRUFBQUVCQkFRQUJnWUFBQUVCQVFFQUJBQUJBQUFFQUFZR0FBTUJBUUVCQkFRQUFRQUdBQUFHQmdZQUFRRUJBUUFBQUFFQUJnWUdCZ1lHQmdBQUFRRUJBQUFBQmdZR0JnWUdCZ1lHQmdBQUFBQUdCZ1lHQmdZR0JnWUdCZ1lHQmdZTUdEQmd3SUFCQXdZU0FBQWgrUVFKTWdBR0FDd0FBQUFBRUFBUUFBQUQ2bWhtWm1iR0dHT01NY1lZWTR3QmhtRVlobUVZaG1FWWhnRUlnR0VZaG1FWWhtRVloZ0VJQW9EQllEQVlEQWFEd1FBQUJBQUFBY0JnTUJnTUJvTUJFQWdFQWdFQXdHQXdHQXdHZ3dFUUNBUUNnVUFBWURBQUFBWURJQkFvRkFvQkFRRUJBQUFFQUFZR0FBRUJCUUFGQVFFQkFRRUVCQUFHQmdBREFRVUZCUUFBQVFFQkJBUUFCZ1lBQUFFQkFRRUVBQUVCQUFRRUFBWUdBQU1CQVFFQkJBQUJBUUFBQkFBR0JnWUFBUUVCQVFBQUFRRUFCZ0FBQmdZR0JnQUFBUUVC
@dzharii
dzharii / BabelVsTypescriptCmp.ts
Last active November 5, 2018 00:11
BabelVsTypescriptCmp
// https://babeljs.io/en/repl
// http://www.typescriptlang.org/play/
// 001 Code
let x = [1, 2, 3];
if (typeof x === 'object') {
}
@dzharii
dzharii / k8s-pi.md
Created June 25, 2018 04:44 — forked from alexellis/k8s-pi.md
K8s on Raspbian

Kubernetes on (vanilla) Raspbian Lite

Yes - you can create a Kubernetes cluster with Raspberry Pis with the default operating system called Raspbian. This means you can carry on using all the tools and packages you're used to with the officially-supported OS.

Pre-reqs:

  • You must use an RPi 2 or 3 for use with Kubernetes
  • I'm assuming you're using wired ethernet (Wi-Fi also works, but it's not recommended)

Master node setup