Skip to content

Instantly share code, notes, and snippets.

View kamikat's full-sized avatar

Kamikat kamikat

  • Beijing, China
View GitHub Profile
@kamikat
kamikat / ssenc.sh
Created December 17, 2015 17:27
QRCode Generator for ShadowSocks Configuration using Google Chart API
#!/bin/sh
##
# QRCode Generator for ShadowSocks Configuration using Google Chart API
# Require:
# - jq (https://stedolan.github.io/jq/)
# - wget
##
if [ -z "$1" -o -z "$2" ]
then
@kamikat
kamikat / geohash.sql
Last active April 30, 2021 16:50
MySQL Queries on GeoHash with arbitrary Base32 encoding table.
--
-- Query unique GeoHash prefixes
--
SELECT
SUBSTR(p.last_location, 1, :length) prefix,
COUNT(p.id) count
FROM
user_profile p
GROUP BY prefix;
@kamikat
kamikat / Dockerfile
Last active April 9, 2016 07:42
Generic Dockerfile building a Node.js server container image.
FROM node:5.3.0
WORKDIR /usr/src/app
ENV NODE_ENV=production NPM_CONFIG_REGISTRY=http://registry.npm.taobao.org/
COPY package.json ./package.json
RUN npm install && rm -rf /tmp/npm-*
@kamikat
kamikat / h3.js
Last active April 9, 2016 14:01
H3 universal hash function in JavaScript
var minstd_rand0 = (function (a, c, m) {
return function (seed) {
var x = seed || 1;
return function () {
return x = (a * x + c) % m;
};
};
})(16807, 0, 2147483647);
var BITS_PER_BYTE = 8;
@kamikat
kamikat / nghttp2Config.cmake
Last active April 9, 2016 07:42
nghttp2 cmake config files
find_package(PkgConfig)
pkg_search_module(OpenSSL REQUIRED openssl)
pkg_search_module(ngHTTP2 REQUIRED libnghttp2)
find_library(ngHTTP2_LOCATION NAMES ${ngHTTP2_LIBRARIES})
# Resolve OpenSSL library names to paths (fixes conflict with default ssl implementation on OS X)
foreach(name ${OpenSSL_LIBRARIES})
find_library(${name}_LOCATION ${name} PATHS ${OpenSSL_LIBRARY_DIRS} NO_DEFAULT_PATH)
list(APPEND OpenSSL_LIBRARIES_ ${${name}_LOCATION})
* {
margin: 0;
padding: 0;
}
html, body {
font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
font-size: 14px;
color: #444;
}
section {
@kamikat
kamikat / BackgroundTransitionTarget.java
Last active July 25, 2020 10:18
A Picasso Target load image into View's background with transition animation
import android.graphics.Bitmap;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.TransitionDrawable;
import android.view.View;
import com.squareup.picasso.Picasso;
import com.squareup.picasso.Target;
@kamikat
kamikat / QueryDefaults.java
Last active March 13, 2017 06:09
Singleton observable query parameter storage... in RxJava...
public class QueryDefaults {
private static QueryDefaults _Instance;
public static synchronized QueryDefaults getInstance() {
if (_Instance == null) {
_Instance = new QueryDefaults();
}
return _Instance;
@kamikat
kamikat / ParcelableListFragment.java
Last active June 6, 2016 06:25
Life-cycle prepared list of Parcelable objects.
package moe.banana.foundation;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import java.util.ArrayList;
@kamikat
kamikat / drawable+bg_toolbar.xml
Last active June 8, 2016 08:46
Draw a circle under the Android status bar
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="?attr/colorPrimary"/>
</shape>
</item>
<item android:gravity="right|center_vertical" android:width="200dp" android:height="200dp" android:right="30dp" android:top="-100dp" android:bottom="-100dp">
<shape android:shape="oval">
<solid android:color="?attr/colorAccent"/>
</shape>