Skip to content

Instantly share code, notes, and snippets.

@gcoda
gcoda / .gitignore
Last active December 2, 2022 00:49
Download latest docker-desktop script
*.zst
*.rpm
*.deb
*.html
@gcoda
gcoda / conver.js
Created September 6, 2022 13:15
keep-takeout-to-markdown
import path from 'node:path'
import fs from 'node:fs/promises'
const sourceDirectory = './Keep'
const destDirectory = './Markdown'
const attachmentsDirectory = './Markdown/Attachments'
const filenames = await fs.readdir(sourceDirectory)
const formatTag = (s = '') =>
s
module Domain
open Fable.Core
open Fable.Import
open System
// type Guid = Guid of string
type NoneEmptyString = private NoneEmptyString of string
@gcoda
gcoda / ._Cloudflare_Worker.md
Last active February 15, 2022 13:10
Cloudflare Worker Template

Cloudflare Worker Typescript Starter

Opinionated Template

init

  1. npx degit https://gist.github.com/5a48a8afd9377b0dd3523f68af512f98.git my-new-worker
  2. mkdir src; mv _src_worker.ts src/worker.ts
  3. npm install
@gcoda
gcoda / gnome-eval.js
Created October 23, 2019 07:08
Gnome Shell Eval Wrapper
const { spawn } = require('child_process')
const argument = {
width: 500,
height: 300,
x: 100,
y: 100,
}
/*
@gcoda
gcoda / split.js
Created July 8, 2019 21:25
Split M4B books chapters
/**
* Needs MP4Box binary to work
* $> node split.js "Atomic Habits.m4b"
*/
const { execSync, exec } = require('child_process')
const cheerio = require('cheerio')
const escape = string =>
string
.split('')
@gcoda
gcoda / index.js
Created April 22, 2019 12:02
Apollo Server Cloudflare worker deployment
const { ApolloServer, gql } = require('apollo-server-cloudflare')
const {
graphqlCloudflare,
} = require('apollo-server-cloudflare/dist/cloudflareApollo')
const typeDefs = gql`
type Query {
hello: String
}
`
@gcoda
gcoda / cert-update.md
Created December 31, 2018 21:43
Google App Engine - Lets Encrypt Wildcard

Make a script from this gist

Update the script

#!/usr/bin/env bash

cat cert-update.md | sed -n '/^```bash/,/```/p' | sed 's/^```/# /' | tail -n +2 > cert-update.sh

Verify Domain

Beware, It is really trivial and slow

JSON.parse(JSON.stringify()) is not really fast or efficient, but stringify has convenient replacer parameter

Useful for converting request query values to integers and booleans

Lets say you have lots of stuff in query

app.get('/query', (req, res) => res.send(req.query))
app.get('/infer', (req, res) => res.send(inferValues(req.query)))
@gcoda
gcoda / date.js
Created November 11, 2018 07:41
simplistic date format
dateFormat(input) {
const date = new Date(input)
const timeString = date.toLocaleTimeString(['uk-UA'],{
hour12: false,
hour: '2-digit',
minute: '2-digit'
})
const dateString = date
.toLocaleDateString(['uk-UA'], {
month: '2-digit',