Skip to content

Instantly share code, notes, and snippets.

View praveenperera's full-sized avatar

Praveen Perera praveenperera

View GitHub Profile
@praveenperera
praveenperera / CLAUDE.md
Created December 10, 2025 15:56
claude code for research

Research Repository

Purpose

This repository is for research purposes only. No code should be added here.

Structure

Each research topic should have its own directory at the root level.

@praveenperera
praveenperera / Dockerfile
Created June 25, 2020 21:07
Dockerfile for my phoenix + tailwindcss + purge css template repo
# STEP 1 - DEPS GETTER
FROM hexpm/elixir:1.10.2-erlang-22.2.7-alpine-3.11.3 AS deps-getter
# setup up variables
ARG APP_NAME
ARG APP_VSN
ARG PHOENIX_SUBDIR=.
ENV APP_NAME=${APP_NAME} \
APP_VSN=${APP_VSN}
@praveenperera
praveenperera / utils.rs
Last active May 27, 2020 18:55
build a path list in parallel
use crossbeam_channel as channel;
use ignore::WalkBuilder;
use std::path::{Path, PathBuf};
#[derive(Debug)]
enum Message {
FoundPath(Result<ignore::DirEntry, ignore::Error>),
DoneScanning,
}
#!/bin/bash
# Options
#
# -V, --verbose
# Enable verbose output for the installer
#
# -f, -y, --force, --yes
# Skip the confirmation prompt during installation
#
@praveenperera
praveenperera / brew_permissions.sh
Last active December 24, 2019 04:49
brew permissions
sudo chown -R $(whoami) /usr/local
sudo chown -R $(whoami) $(brew --prefix)/*
sudo chown -R "$USER":admin /usr/local
sudo chown -R "$USER":admin /Library/Caches/Homebrew
@praveenperera
praveenperera / webpack.config.js
Created December 17, 2019 14:38
webpack.config.js (2019)
const path = require("path");
const glob = require("glob");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const UglifyJsPlugin = require("uglifyjs-webpack-plugin");
const OptimizeCSSAssetsPlugin = require("optimize-css-assets-webpack-plugin");
const WebpackNotifierPlugin = require("webpack-notifier");
const CopyWebpackPlugin = require("copy-webpack-plugin");
const isProduction = process.env.NODE_ENV === "production";
const ImageminPlugin = require("imagemin-webpack-plugin").default;
@praveenperera
praveenperera / crate-gh-install.sh
Last active November 27, 2019 20:27 — forked from sjparkinson/crate-gh-install.sh
Install binaries from a GitHub release.
#!/bin/sh
# Heavily modified from https://github.com/japaric/trust/blob/gh-pages/install.sh.
help() {
cat <<'EOF'
Install a binary release of a Rust crate hosted on GitHub.
Usage:
install.sh [options]
@praveenperera
praveenperera / prod_issuer.yaml
Created September 24, 2019 19:17
cluster issuer foor route53
apiVersion: certmanager.k8s.io/v1alpha1
kind: ClusterIssuer
metadata:
name: letsencrypt-prod
spec:
acme:
email: [email protected]
server: https://acme-v02.api.letsencrypt.org/directory
privateKeySecretRef:
name: letsencrypt-prod

Keybase proof

I hereby claim:

  • I am praveenperera on github.
  • I am praveenperera (https://keybase.io/praveenperera) on keybase.
  • I have a public key ASA7gaHjs_VF4UG15CNroeYzQhJ-Zy28Vr7Nt5agSPK8pAo

To claim this, I am signing this object:

#!/usr/bin/perl -w
# -*- Mode: CPerl -*-
#
# This code was developped by IDEALX (http://IDEALX.org/) and
# contributors (their names can be found in the CONTRIBUTORS file).
# Copyright (C) 2000-2004 IDEALX
# Copyright (C) 2005-2011 Nicolas Niclausse
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by