Hello, 👋 I'm Mahmoud

A self-taught software engineer based in Egypt, who is passionate about web development. Enjoy coding in TypeScript. Developing the frontend most of the time, sometimes the backend.

My current tech stack:

Frontend:

WebRTCtypescripthtml5css3tailwindcssreactnext.jsapollographqljestreduxmaterial-ui

Backend:

node.jsgraphqlpostgresqlredismongodb

Projects:

  • WebRTC Peer

    WebRTCtypescript

    Basic setup for peer-to-peer connection between two browsers, supporting both data channels and media streams.

  • Voices

    next.jstailwindcssreduxnode.jsredis

    This a decentralized voice conversation web app using webRTC, its peer-to-peer connection not based on a voice server.

  • PWA Image Editor

    next.jstailwindcss

    A progressive web app to detect the average colors of an image as you can apply some adjustments.

  • Blog

    next.jstailwindcssnode.js

    Where I write about web development, it is built using Next.js, GraphQL and Nest.

  • E-Commerce

    next.jsreduxmaterial-uinode.jspostgresqlredis

    E-commerce app built with TypeScript to try building a big scale project.

  • Social app

    next.jsnode.jspostgresqlredis

    Social app built for learnnig TypeScript, Node.js and GraphQL.

  • Network Devices Scanner

    node.js

    Get the ips and mac addresses of all devices that running on your local network from the browser.

  • Typing Test App

    react

    This app to test how many words you write in a minute, as it shows your speed live while you are typing.

  • CS50-Substitution

    react

    This is CS50 substitution to convert a plain text to a ciphertext as you can versa based on a key you generate, it supports multi-languages as it easy to add a new one, also it has a generator to share your key with others so they can cipher their text based on your key.

  • Chat App

    angularnode.js

    Real-time chat app, you can use by generating your unique id then you can contact with multiple persons at the same time or individual one.

  • Path Finder

    react

    Path Finder Using A* search algorithm.