Osama Rabea

Osama Rab3

About Me

I'm Osama Rab3, a third-year Computer Engineering student at Menoufia University. I specialize in backend development with Node.js, Express, and MySQL. My passion lies in building scalable web applications and contributing to open-source projects.

With experience in RESTful API design, WebSockets, and database management, I strive to create efficient and reliable software solutions. I'm constantly learning and expanding my technical skills to stay current with industry trends.

Education

Faculty of Electronic Engineering, Menoufia University

2023 – Present

Computer Engineering

Focusing on software development, algorithms, and system design with a strong foundation in computer science principles.

Self-Directed Learning

Ongoing

Backend Development & Open Source Contribution

Continuously expanding knowledge through online courses, documentation, and practical application in real-world projects.

Experience

LFX Mentee - Fablo (Part-time)

June 2025 – November 2025 | Remote
LinuxTestingTypeScriptBashDocker

Contributing to Fablo, a Hyperledger Fabric network configuration tool, focusing on testing and ensuring feature parity between Fabric v2 and v3. Writing end-to-end Bash tests, improving Jest test coverage, and enhancing documentation.

All In Open Source (Part-time)

April 2024 – July 2024 | Remote

Participated in Cohort 2 of the All In Africa program, contributing to IT initiatives aimed at benefiting the African continent. Gained practical experience in collaborative open source development and project management.

Open Source Contributions

GitHub

p4lang/behavioral-model

Improved C++ Standard Requirement PR #1266 Issue #1241

Upgraded the project requirement from C++11 to C++17, enabling the use of modern C++ features and eliminating the dependency on boost/thread/shared_mutex.hpp. Contributed changes to the build system and documentation to support the newer C++ standard.

Fablo

A simple tool to generate the Hyperledger Fabric blockchain network and run it on Docker. It supports RAFT and solo consensus protocols, multiple organizations and channels, chaincode installation and upgrade.

Solved:Issue #217"Test different environments in GitHub Actions (for example OS X)" by implementing PR #546 "feat: Add cross-platform testing on macOS," which is directly relevant to the cross-platform testing needs of Fablo.

render-engine

Python Static Site Generator built with flexibility prioritized:

  • PR #744:Added frontmatter to files in the getting-started/ and contributing/ folders to enhance documentation and improve content management. Fixedissue #599,issue #600, andissue #594.
  • PR #746:Created Windows Test matrix to improve cross-platform compatibility.issue #738.
  • PR #750:Added macOS testing to release workflow to ensure proper functionality across different operating systems.

Projects

Note-Taking API

Node.jsExpress.jsMongoDBTypeScript

A robust API built with Node.js, Express.js, and MongoDB using TypeScript. It provides CRUD operations for managing notes efficiently with a service & controller-based architecture.

  • Create, Read, Update, and Delete (CRUD) Notes
  • MongoDB Integration
  • Error Handling with Custom Middleware
  • Service & Controller-based Architecture
  • Uses TypeScript for Strong Typing

AI Fitness Coach

AIGemini AIJavaScript

An intelligent fitness companion that creates personalized exercise and nutrition plans powered by Gemini AI.

  • Personalized Workout Plans: AI-generated exercise routines tailored to fitness level, goals, and available equipment
  • Custom Nutrition Guidance: Nutritional plans based on dietary preferences and fitness objectives
  • Exercise Visualization: Automatically generated images for each exercise
  • Interactive AI Chat: Communication with the AI coach for questions and motivation

Amazon Product Scraper

Node.jsPuppeteerStreamingWeb Scraping

A Node.js script that uses Puppeteer to scrape product data from Amazon Egypt's video games section with stream-based JSON writing for efficient large-scale data handling. The script navigates through multiple pages, extracts product details, and saves them in a JSON file.

Islamic Reminder Extension

Chrome ExtensionJavaScriptHTML/CSS

A Chrome extension that sends Islamic reminder notifications every 5 minutes, helping users maintain mindfulness throughout their day.

YouTube Video Downloader

Bashyt-dlpShell Scripting

A Bash script for downloading videos and playlists from YouTube. The script utilizes the yt-dlp and toilet libraries to fetch and download videos in various resolutions.

Odin-Book

Node.jsExpressSocket.IOPrismaJWT

Developed a social media platform inspired by popular sites, featuring user authentication, post creation, real-time updates, and group management. Implemented RESTful API endpoints and Socket.IO events for dynamic interactions. Utilized JWT for secure API endpoints and Prisma ORM for MySQL database management.

Real-Time Chat Application

Node.jsExpressSocket.IOPrismaJWT

Built a chat application supporting individual and group messaging with real-time updates via Socket.IO. Integrated JWT-based authentication and RESTful API endpoints for managing users, messages, and groups.

Library Management System

Node.jsExpressMySQL

Designed and developed a system to manage library resources including book inventory, member registration, and borrowing/returning operations. Implemented features for overdue fine calculation and advanced search/filter capabilities.

System Programming with C

CLinux

Implemented approximately 15 Linux command-line utilities in C, enhancing system programming skills. Demonstrated proficiency in interacting with the Linux OS and low-level programming.

Technical Skills

Programming Languages

JavaScript
TypeScript
C/C++
SQL

Backend Development

Node.js
Express
REST API
WebSockets
JWT
Passport.js
Middleware

Database

MongoDB
MySQL
Prisma

Tools & Testing

Git
GitHub Actions
CI/CD
Jest
Multer
Cross-platform Testing
Documentation

Other Skills

Open Source
Web Scraping
Puppeteer
Bash Scripting
Chrome Extensions
AI Integration

Get In Touch

Contact Information

Let's Connect

I'm always open to discussing new projects, creative ideas or opportunities to be part of your vision.