Skip to content

Instantly share code, notes, and snippets.

View jabranr's full-sized avatar
🚀
Building ideas

Jabran Rafique jabranr

🚀
Building ideas
View GitHub Profile
@jabranr
jabranr / redacted-email.js
Created November 24, 2023 14:08
Redact an email address with asterisks
const redactedEmail = email.replace(/(.{2})(.*)(@.*)/, '$1...$3');
@jabranr
jabranr / ts-declaration.sh
Created October 27, 2023 07:48
Create a typescript declaration file
npx -p typescript tsc {file_name.js} --declaration --allowJs --emitDeclarationOnly --outDir {output_dir_name}
@jabranr
jabranr / WhatsApp.js
Last active August 26, 2023 07:28
WhatsApp bookmarklet
/**
* Use this bookmarklet to start WhatsApp chat without saving a contact first
*/
(function(){
let phone = window.prompt('Enter phone with country code');
if (Boolean(phone)) {
phone = phone.startsWith('+') ? phone : phone.startsWith('0') ? phone.replace(/^0+/, '+') : phone.padStart(phone.length+1, '+');
window.open(`https://wa.me/${phone}`);
}
}());
@jabranr
jabranr / harlem-shake-snippet.js
Last active June 29, 2023 15:01
Harlem Shake JavaScript bookmarklet
/**
* 1. Save the following JavaScript snippet as browser bookmark
* 2. Visit a webpage and click on saved bookmark
* 3. Watch the webpage elements dance
* Original story by Mozilla - https://hacks.mozilla.org/2014/02/html5-css3-and-the-bookmarklet-that-shook-the-web/
*/
javascript:(function(){function c(){var e=document.createElement("link");e.setAttribute("type","text/css");e.setAttribute("rel","stylesheet");e.setAttribute("href",f);e.setAttribute("class",l);document.body.appendChild(e)}function h(){var e=document.getElementsByClassName(l);for(var t=0;t<e.length;t++){document.body.removeChild(e[t])}}function p(){var e=document.createElement("div");e.setAttribute("class",a);document.body.appendChild(e);setTimeout(function(){document.body.removeChild(e)},100)}function d(e){return{height:e.offsetHeight,width:e.offsetWidth}}function v(i){var s=d(i);return s.height>e&&s.height<n&&s.width>t&&s.width<r}function m(e){var t=e;var n=0;while(!!t){n+=t.offsetTop;t=t.offsetParent}return n}function g(){var e=docume
@jabranr
jabranr / iterm-cobalt-2colors.json
Created November 17, 2019 14:25
iTerm Cobalt2 colors (JSON config)
{
"Use Non-ASCII Font" : false,
"Tags" : [
],
"Ansi 12 Color" : {
"Green Component" : 0.3333333432674408,
"Blue Component" : 1,
"Red Component" : 0.3333333432674408
},
@jabranr
jabranr / README.md
Created July 28, 2018 09:01 — forked from jonathantneal/README.md
Local SSL websites on macOS Sierra

Local SSL websites on macOS Sierra

These instructions will guide you through the process of setting up local, trusted websites on your own computer.

These instructions are intended to be used on macOS Sierra, but they have been known to work in El Capitan, Yosemite, Mavericks, and Mountain Lion.

NOTE: You may substitute the edit command for nano, vim, or whatever the editor of your choice is. Personally, I forward the edit command to Sublime Text:

alias edit="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
@jabranr
jabranr / test.js
Created May 23, 2018 17:08 — forked from mscdex/test.js
sharing sessions between node.js and php using redis
var express = require('express'),
app = express(),
cookieParser = require('cookie-parser'),
session = require('express-session'),
RedisStore = require('connect-redis')(session);
app.use(express.static(__dirname + '/public'));
app.use(function(req, res, next) {
if (~req.url.indexOf('favicon'))
return res.send(404);
@jabranr
jabranr / ssh-config.md
Last active August 19, 2024 07:51
ssh config boilerplate

Step 1

# ~/.ssh/config
Host {work}.bitbucket.com
HostName {work}.bitbucket.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/{work}

Host bitbucket.org
@jabranr
jabranr / vimrc
Last active September 25, 2017 12:32
.vimrc file
" Inspired from https://dougblack.io/words/a-good-vimrc.html
" Enable syntax colors
syntax enable
" Set line numbers
set number
set relativenumber
" Set tabs and spaces
@jabranr
jabranr / distance.js
Last active September 17, 2017 09:05
(Math) Find distance between two known points
// Point a1
// Point a2
let dx = a2.x - a1.x;
let dy = a2.y - a1.y;
let distance = Math.sqrt(dx*dx + dy*dy);