Skip to content

Instantly share code, notes, and snippets.

View wazeerc's full-sized avatar
🐞
Stuck in Vim

Wazeer wazeerc

🐞
Stuck in Vim
View GitHub Profile
@wazeerc
wazeerc / excalidraw.sh
Created March 6, 2025 12:25
zsh Script to create new Excalidraw in VS Code
# Create new Excalidraw file in a "designs" folder
function new_excalidraw() {
local filename="${1:-diagram}" # Use 'diagram' as default if no name provided
# Validate filename
if [[ ! "$filename" =~ ^[a-zA-Z0-9_-]+$ ]]; then
echo -e "\033[0;31mError: Filename can only contain letters, numbers, underscores, and hyphens\033[0m"
return 1
fi
@wazeerc
wazeerc / markdown-parser.ts
Created December 13, 2024 15:20
Markdown Parser using remark
//#region: Markdown parsing utils
import rehypeFormat from "rehype-format";
import rehypeStringify from 'rehype-stringify';
import remarkGfm from "remark-gfm";
import remarkParse from 'remark-parse';
import remarkRehype from 'remark-rehype';
import { unified } from 'unified';
export async function parseMarkdown(textToParseIntoMarkdown: string): Promise<unknown> {
const markdownProcessor = unified()
@wazeerc
wazeerc / .prettierrc.json
Created November 16, 2024 14:56
Prettier Sort Imports
{
...
"importOrder": [
"^(.*).css$",
"^react$",
"<THIRD_PARTY_MODULES>",
"^@components/(.*)$",
"^@hooks/(.*)$",
"^[./]"
],
@wazeerc
wazeerc / tsconfig.app.json
Last active October 5, 2024 19:56
My preferred TypeScript config 🛠️
{
"compilerOptions": {
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitAny": true
}
}
@wazeerc
wazeerc / .prettierrc.json
Last active September 7, 2024 07:12
My preferred Prettier config 🪄
{
"printWidth": 85,
"arrowParens": "avoid",
"tabWidth": 2,
"singleQuote": false,
"jsxSingleQuote": false,
"trailingComma": "all",
"bracketSpacing": true,
"bracketSameLine": false
}
@wazeerc
wazeerc / commits101.md
Created August 26, 2024 13:50
Conventional Commit Message

Conventional Commit Messages

Types

  • API relevant changes
    • feat Commits, that adds or remove a new feature
    • fix Commits, that fixes a bug
  • refactor Commits, that rewrite/restructure your code, however does not change any API behaviour
    • perf Commits are special refactor commits, that improve performance
  • style Commits, that do not affect the meaning (white-space, formatting, missing semi-colons, etc)
@wazeerc
wazeerc / genRecommendation.ts
Last active September 3, 2024 11:13
Algorithm used to generate a number of recommendations based on selected movies (used in my movie-recs project).
/**
* @summary Generates recommendations based on selected items and custom criteria using a point-based system.
* @param allItems - An array of all available items.
* @param selectedItems - An array of selected items.
* @param criteria - An array of functions to calculate points based on different criteria.
* @param numberOfRecommendations - The number of recommendations to generate, defaults to 3.
* @returns An array of recommended items.
* @example
* const allItems = [1, 2, 3, 4, 5];
* const selectedItems = [1, 2];