Skip to content

Instantly share code, notes, and snippets.

View vsimko's full-sized avatar
💭
building stuff

Viliam Simko vsimko

💭
building stuff
View GitHub Profile
#!/usr/bin/env node
// TODO: this is currently just a helper script included from `fix-mkdocs-pages.sh`
const fs = require('fs')
const yaml = require('js-yaml')
function firstObjectKey(obj) {
return Object.keys(obj)[0]
}
<link href='https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons' rel="stylesheet">
<link href="https://unpkg.com/vuetify/dist/vuetify.min.css" rel="stylesheet">
<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vuetify/dist/vuetify.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<div id="app">
<input v-model="myinput">
<v-app>
<v-toolbar dense dark color="blue darken-2">

The easiest way to create a microservice

mkdir micro-demo
cd micro-demo
yarn add micro
echo 'module.exports = () => "Welcome to Micro"' > index.js
yarn micro

Now browse to http://localhost:3000

// run this code in dev console when you selected your icon
var x = document.createElement('img')
x.src = document.querySelector('.iconPreview').style.backgroundImage.replace(/url\("/,'').replace(/"\)$/, '')
document.body.replaceWith(x)
// or use this as a bookmark in your chrome
// Name: TNP Download
// URL: javascript:!(function() { var x = document.createElement('img'); x.src = document.querySelector('.iconPreview').style.backgroundImage.replace(/url\("/,'').replace(/"\)$/, ''); document.body.replaceWith(x) })()
// Created by Viliam Simko
// using the example from https://github.com/Sneko/node-openalpr.git
const openalpr = require("node-openalpr")
const fs = require('fs')
async function identify(path) {
return new Promise((resolve, reject) => {
openalpr.IdentifyLicense(path, (error, output) =>
error
// from https://2ality.com/2019/10/eval-via-import.html
function esm(templateStrings, ...substitutions) {
let js = templateStrings.raw[0];
for (let i=0; i<substitutions.length; i++) {
js += substitutions[i] + templateStrings.raw[i+1];
}
return 'data:text/javascript;base64,' + btoa(js);
}
feat (new feature)
fix (bug fix)
docs (changes to documentation)
style (formatting, missing semi colons, etc; no code change)
refactor (refactoring production code)
test (adding missing tests, refactoring tests; no production code change)
chore (updating grunt tasks etc; no production code change)
@vsimko
vsimko / RemoteIteratorWrapper.scala
Created August 30, 2017 23:06 — forked from timvw/RemoteIteratorWrapper.scala
scala wrapper for hadoop remote iterator
import org.apache.hadoop.fs.RemoteIterator
/**
* Converts RemoteIterator from Hadoop to Scala Iterator that provides all the familiar functions such as map,
* filter, foreach, etc.
*
* @param underlying The RemoteIterator that needs to be wrapped
* @tparam T Items inside the iterator
* @return Standard Scala Iterator
*/
@vsimko
vsimko / useSuspenseQuery.ts
Last active April 26, 2021 14:56
Apollo query hook that supports React.Suspense
import { ApolloQueryResult, QueryOptions, QueryResult, TypedDocumentNode, useApolloClient, useQuery } from "@apollo/client";
import uuid from "uuid/v5";
const uuidNamespace = uuid("suspense.queries.utils", uuid.DNS);
const suspenseQueryStore: Record<string, { read: () => ApolloQueryResult<unknown> }> = {};
type SuspendQueryResult<Q, V> = Pick<QueryResult<Q, V>, "networkStatus" | "variables"> & { data: Q };
/** Works with `TypedDocumentNode` which can be generated using `typed-document-node` codegen plugin. */
export function useSuspenseQuery<Q, V>(
#!/bin/sh
# Quick and dirty config hack for mkdocs pages.
#
# Created by Viliam Simko (viliam.simko@gmail.com)
# License: MIT
#
# Generates `pages:` section within `mkdocs.yml` file.
# The sections are ordered by filenames, however the section
# titles are taken either from the first H1 within a document