Skip to content

Instantly share code, notes, and snippets.

View ahashem's full-sized avatar
😎
Just started!

Ahmed ahashem

😎
Just started!
View GitHub Profile
@aessam
aessam / Codebase diagram.md
Created June 24, 2025 03:08
Generate multiple Mermaid diagrams for large codebases.

I have a large codebase that I want to understand better through visual architecture diagrams. Please analyze the project structure and create comprehensive Mermaid diagrams that help me understand the codebase at different levels of detail.

📋 Required Analysis

First, explore the codebase to understand:

  1. Project structure - root directories, main modules, configuration files
  2. Dependencies - internal dependencies between modules/packages
  3. Architecture patterns - layered architecture, microservices, monolith, etc.
  4. Key systems - core functionality areas (UI, backend, database, API, etc.)
  5. Technology stack - frameworks, languages, tools used
@aessam
aessam / claude-code-dependency-graph-prompt.md
Created June 22, 2025 21:45
Universal prompt for Claude Code to generate interactive multi-level dependency graphs for any codebase. Creates beautiful D3.js visualizations with 3 zoom levels: system overview (40k ft), module view (10k ft), and full dependency graph. Works with Rust, JavaScript, Python, Go, Java, and more.

Analyze this codebase and create a multi-level interactive dependency graph visualization as a single HTML file.

Level 1 - System Overview (40,000ft view):

  • Show only top-level directories/subsystems
  • Group by: Frontend, Backend, Core, Database, Tests, Tools, External
  • Display as large nodes with # of files and primary language
  • Show only major connections between subsystems

Level 2 - Module View (10,000ft view):

  • Show ~30-50 most important modules/packages
@Zheaoli
Zheaoli / The new version v1.24.0 kubectl cli uses an invalid workaround on aws eks.md
Last active May 2, 2025 10:41
新版 v1.24.0 kubectl cli 在 aws eks 上使用失效的解决方法.md

Please update your awscli to 2.6.3

In v1.24.0, kubectl will report the following error when relying on the kubeconfig generated by aws-cli

> error: exec plugin: invalid apiVersion "client.authentication.k8s.io/v1alpha1"

The reason is that Kubernetes deprecated client.authentication.k8s.io/v1alpha1" from the exec plugin in PR108616

And the aws-cli update PR6476 has not been merged. There are two solutions

@justjake
justjake / server-preload.js
Last active July 8, 2025 16:50
Customizing NextJS for error reporting and Datadog APM (dd-trace) integration. See https://jake.tl/notes/2021-04-04-nextjs-preload-hack
// @ts-check
"use strict"
/**
* Set up datadog tracing. This should be called first, so Datadog can hook
* all the other dependencies like `http`.
*/
function setUpDatadogTracing() {
const { tracer: Tracer } = require('dd-trace')
const tracer = Tracer.init({
@gaearon
gaearon / uselayouteffect-ssr.md
Last active May 2, 2025 03:01
useLayoutEffect and server rendering

If you use server rendering, keep in mind that neither useLayoutEffect nor useEffect can run until the JavaScript is downloaded.

You might see a warning if you try to useLayoutEffect on the server. Here's two common ways to fix it.

Option 1: Convert to useEffect

If this effect isn't important for first render (i.e. if the UI still looks valid before it runs), then useEffect instead.

function MyComponent() {
@gaearon
gaearon / prepack-gentle-intro-1.md
Last active March 22, 2025 07:22
A Gentle Introduction to Prepack, Part 1

Note:

When this guide is more complete, the plan is to move it into Prepack documentation.
For now I put it out as a gist to gather initial feedback.

A Gentle Introduction to Prepack (Part 1)

If you're building JavaScript apps, you might already be familiar with some tools that compile JavaScript code to equivalent JavaScript code:

  • Babel lets you use newer JavaScript language features, and outputs equivalent code that targets older JavaScript engines.
@ksmithut
ksmithut / .dockerignore
Last active January 25, 2025 00:36
Node Docker Compose nodemon
node_modules
@mort3za
mort3za / git-auto-sign-commits.sh
Last active July 22, 2025 02:23
Auto sign your git commits
# Generate a new pgp key: (better to use gpg2 instead of gpg in all below commands)
gpg --gen-key
# maybe you need some random work in your OS to generate a key. so run this command: `find ./* /home/username -type d | xargs grep some_random_string > /dev/null`
# check current keys:
gpg --list-secret-keys --keyid-format LONG
# See your gpg public key:
gpg --armor --export YOUR_KEY_ID
# YOUR_KEY_ID is the hash in front of `sec` in previous command. (for example sec 4096R/234FAA343232333 => key id is: 234FAA343232333)
@ziluvatar
ziluvatar / token-generator.js
Last active July 26, 2025 19:43
Example of refreshing tokens with jwt
/**
* Example to refresh tokens using https://github.com/auth0/node-jsonwebtoken
* It was requested to be introduced at as part of the jsonwebtoken library,
* since we feel it does not add too much value but it will add code to mantain
* we won't include it.
*
* I create this gist just to help those who want to auto-refresh JWTs.
*/
const jwt = require('jsonwebtoken');
@eddywashere
eddywashere / App.js
Last active February 20, 2020 10:15 — forked from gaearon/App.js
Reactstrap App.js Example for create-react-app
import React, { Component } from 'react';
import {
Collapse,
Navbar,
NavbarToggler,
NavbarBrand,
Nav,
NavItem,
NavLink,
Container,