Skip to content

Instantly share code, notes, and snippets.

View streamich's full-sized avatar
🐢
steady wins the race

Va Da streamich

🐢
steady wins the race
  • Metaverse
  • 19:42 (UTC +01:00)
View GitHub Profile
@streamich
streamich / encrypt-decrypt.md
Last active December 28, 2024 16:16
encrypt-decrypt.md

Simple encryption/decription with password functions that work in Browser and Node.js

const s2b = (str) => new TextEncoder().encode(str);
const b2s = (bytes) => new TextDecoder().decode(bytes);
const bytesToBase64 = (arr) => btoa(Array.from(arr, (b) => String.fromCharCode(b)).join(""));
const base64ToBytes = (base64) => Uint8Array.from(atob(base64), (c) => c.charCodeAt(0));

export const getKey = async (password, salt) => {
  const bytes = s2b(password);
@streamich
streamich / ia-solution.md
Created August 19, 2024 15:43
AI and JavaScript will solve everything
let todo = 'make peace and solve world hunger';
let url = 'http://api.openai.com/v1/_llama?tkn=' + todo;
let { solution } = await JSXHttpRequest().open('POST', url);

eval(solution);
@streamich
streamich / json-expression-grammar.md
Last active July 28, 2024 12:37
JSON Expression Grammar

JSON Expression Grammar

An improvised draft of JSON Expression grammar in ABNF:

JsonExpression = "[" Operator Operands "]"        ; JSON-expression is itself a valid JSON array

Operator = JsonLiteral                            ; Operator is any JSON value, but usually a string

Operands = 1*("," Operand) ; Non-nullary expression has at least one operand

Requirements

  • Ability to match static routes GET /foo/bar
    • ['GET /foo/bar']
  • Ability to match a single step in a route POST /users/{userId}/edit or POST /users/{userId:*/}edit
    • ['POST /users/', match('userId', '*/'), '/edit']
  • Ability to wildcard the ending of a route GET /static/{filename:*}
    • ['GET /static/', match('filename', '*')]
  • Ability to make the last route step optional GET /users{userId?:/*/}
  • ['GET /users'] and
const enum CONST {
MAX_LENGTH = 128,
}
class BigArrayRef<T> {
constructor (public readonly arr: BigArray<T>, public readonly pos: number) {}
}
export class BigArray<T> {
public length = 0;
@streamich
streamich / pub.md
Last active December 28, 2024 16:26

146aPdVmwzwzwzWe:)P

14Pd:)P2022

@streamich
streamich / lambda.js
Last active January 16, 2025 06:17 — forked from maxbeatty/lambda.js
using node-postgres (`pg`) in AWS Lambda
import λ from "apex.js";
import { Pool } from "pg";
// connection details inherited from environment
const pool = new Pool({
max: 1,
min: 0,
idleTimeoutMillis: 120000,
connectionTimeoutMillis: 10000
});

Specify required fields, rest will be optional.

export type Required<T, K extends keyof T> = Partial<T> & Pick<T, K>;

Specify which fields to omit.

export type Omit = Pick&gt;;
@streamich
streamich / gist:03d109062e4b330359dd6e11481fbd6f
Created August 31, 2018 08:12 — forked from kingbin/gist:9435292
Manually Start/Stop PostgresSQL on Mac
# Stop PostgreSQL from auto starting
sudo launchctl unload -w /Library/LaunchDaemons/com.edb.launchd.postgresql-9.3.plist
# Enable PostgreSQL to auto start
sudo launchctl load -w /Library/LaunchDaemons/com.edb.launchd.postgresql-9.3.plist
# Start postgres
$ sudo su postgres
Password:
bash-3.2$ pg_ctl -D /Library/PostgreSQL/9.3/data/ start

tweet-css

Smallest possible CSS-in-JS library.