Skip to content

Instantly share code, notes, and snippets.

View ahmedhegazee's full-sized avatar
🏠
Working from home

Ahmed Hegazy ahmedhegazee

🏠
Working from home
  • Ahmed Hegazy Dev
  • Egypt, Mahllah Elkobrah
  • 15:25 (UTC +03:00)
View GitHub Profile
@ahmedhegazee
ahmedhegazee / deploy.md
Last active July 15, 2025 07:41
Deploy Nodej on Digital ocean droplets

Setting Up Node.js with PM2 in Ubuntu / DigitalOcean

Keywords: servers, node js, pm2, deployment, mongodb, mysql, redis
Description: Complete guide to setting up a production Node.js server with PM2, databases, and SSL certificates.
Date: July 15, 2025
Tags: servers, node js, pm2, deployment
Author: Ahmed Hegazy


@ahmedhegazee
ahmedhegazee / Codebase diagram.md
Created June 26, 2025 16:15 — forked from aessam/Codebase diagram.md
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
@ahmedhegazee
ahmedhegazee / node_nginx_ssl.md
Created June 16, 2025 06:36 — forked from bradtraversy/node_nginx_ssl.md
Node app deploy with nginx & SSL

Node.js Deployment

Steps to deploy a Node.js app to DigitalOcean using PM2, NGINX as a reverse proxy and an SSL from LetsEncrypt

1. Sign up for Digital Ocean

If you use the referal link below, you get $10 free (1 or 2 months) https://m.do.co/c/5424d440c63a

2. Create a droplet and log in via ssh

I will be using the root user, but would suggest creating a new user

@ahmedhegazee
ahmedhegazee / ExtractTranslations.php
Created December 28, 2022 11:57
Extract translations from lang files to json files
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Storage;
class ExtractTranslations extends Command
{

How to follow this guide

The problem

I have one computer and two different github accounts. One is for work, the other is for my personal stuff. I can't use the same ssh key twice, so I have to use different ssh key for each of my accounts. How do I do that? How do I switch between these ssh keys?

@ahmedhegazee
ahmedhegazee / valet.conf
Created July 6, 2020 09:42 — forked from poul-kg/valet.conf
CORS Rules for Laravel Valet Nginx
# To enable CORS you should add lines with CORS rules below to your valet.conf file
# Find the file /usr/local/etc/nginx/valet/valet.conf - this is Valet conf for Nginx
# of try to execute `locate valet.conf` and find the `valet.coinf` in `nginx` subdirectory
# after you edit your valet.conf do not forget to execute `valet restart`
server {
listen 80 default_server;
root /;
charset utf-8;
client_max_body_size 128M;
@ahmedhegazee
ahmedhegazee / deployment_guide.md
Last active October 5, 2024 20:51 — forked from vicgonvt/deployment_guide.md
Deployment Guide for Ubuntu Server from Scratch with Laravel