Hello world, I’m

Abanoub Hanna

Full‑stack Web & Android Developer

I design and build clean, reliable software across the stack — from web backends and APIs in PHP Laravel and Go, to Android applications in Kotlin/Java, to fast CLI tools in Go that automate real‑world workflows.

Portrait of Abanoub Hanna

Tech Stack

Technologies I work with daily to build reliable, scalable software.

Go programming language

Go (Golang)

Backend APIs, CLI tools, cross-platform apps, and high-performance services.

PHP Laravel

PHP Laravel

Full-stack web apps, APIs, e-commerce platforms, and rapid prototyping.

Kotlin programming language

Android (Kotlin/Java)

Mobile apps with modern architecture, Jetpack Compose, and performance optimization.

sqlite

SQLite & Databases

Efficient data modeling, migrations, and query optimization for web and apps.

🎨

CSS & Tailwind

Responsive UIs, utility-first design, and accessible layouts.

CLI & DevOps

Automation scripts, deployment pipelines, Linux tools, and system scripting.

IDEs & Editors

My daily drivers for coding across platforms — optimized for speed and workflow.

Android Studio

Android app development in Kotlin and Java — layouts, Compose, debugging, and emulators.

visual studio code

VS Code

Web development in Go and Laravel — extensions for syntax, debugging, Tailwind, and Git integration.

Neovim icon

VIM / NeoVim

Scripting, CLI tools, and quick edits — with custom configs for Fish shell and system automation.

Operating Systems

Platforms I develop and deploy across — from daily drivers to production environments.

apple

macOS

Daily driver for development — Xcode, Homebrew, fast builds, and seamless Apple ecosystem integration.

Ubuntu Linux

Primary Linux environment — Go cross-compilation, CLI workflows, server deployments, and containerization.

windows 11

Windows 11 + WSL Ubuntu

Hybrid setup for cross-platform testing — WSL for Linux tooling, PowerShell, and Windows-native apps.

Code Platforms

Where I host, collaborate, and ship open-source projects across ecosystems.

GitHub

GitHub

Primary hub for open-source — gobrew package manager, Go CLI tools, cross-platform builds, and collaboration.

GitLab

CI/CD pipelines, private repos, enterprise-grade workflows, and advanced project management.

Codeberg

FOSS-first hosting — decentralized Git, privacy-focused, and community-driven development.

Web Projects

Full-stack applications I've built and launched — from SaaS to eCommerce to content platforms.

🛒

LokaStores

Full-featured eCommerce platform with inventory, payments, and order management for online retail.

PHP Laravel Tailwind CSS PostgreSQL
📄

OCRWeb

Queue-based OCR service for images and PDFs — scalable task processing with Tesseract integration.

Go Tesseract OCR
📝

AbanoubHanna.com

Bilingual tech blog powered by Markdown — custom Hugo theme with Arabic/English content management.

Hugo SSG Custom Theme Markdown
🏗️

KemetWebBuilder

Visual website builder for non-technical users — drag & drop interface with code generation.

Go JavaScript

Android Projects

Native Android apps published on Google Play — from religious content to OCR utilities.

🙏

Agpeya

Google Play • GitHub

Agpeya prayer book for Coptic Orthodox Church — Arabic prayers with daily liturgical hours.

Java Open Source
🖼️

IMG2TXT

Open Source

Free OCR app to extract text from images — fast, offline text recognition powered by Tesseract.

Kotlin OCR

Kart Business Project

Predictions for the Future of Programming Future in 2030

Free OCR Software created by Abanoub Hanna - Software Developer

512 posts

Google Patches Linux kernel with ~40% TCP performance

I watched a video from Hussein Nasser on YouTube about a patch from Google to get better performance at scale. Coco Li (from Google) explained of their cachline optimization effort to the networking …

A Complete Guide to Docker | Cheatsheet

What is docker ? 🔗 Docker is a platform for developing, deploying, and running applications in standardized units called containers. These containers package the application’s code, libraries, …

How to get the stdout of a command into the clipboard on Ubuntu Linux ?

Pre-installed Commandline Tools on Ubuntu 🔗 xsel comes preintalled in Ubuntu Linux. Actually XSEL is pre-installed with XServer if you are using it. You can copy with xsel like this. echo "text …

How to get the stdout of a command into the clipboard on Mac OS ?

Mac OS Native Commandline Tools 🔗 Mac OS comes with pbcopy to copy text, and pbpaste to paste the previously copied text. You can copy with pbcopy like this. pbcopy < id_bus_ssh_pass.txt or piping …

How to get a text file from a server I already SSHed into ?

I ssh into my server via this command. sudo ssh -i /Users/mbp/.ssh/authorized_keys/id_bus [email protected] When I click enter, I should write the sudo password. Then I write the password of …

Software I Use

I share with you all software I use as a software developer. Here is the list of all programs, apps, .. all software products and services. Web Browser 🔗 I use Google Chrome, Google Chrome Dev, …

Vim cheatsheet | navigation, editing, insert mode, visual mode

Vim is an efficient text editor used in terminal (CLI). Vim is mostly used by programmers. There is a new VIM fork called NeoVIM or nvim. It is great and modern with better capabilities. All things in …

How to rename all files inside a directory to a sequence of incremented files in FISH shell ?

rename all files inside a specific directory/folder 🔗 First of all, change directory (cd) into the directory where the files exist. cd /path/to/your/directory/ Use this command to rename all images …

How to support multiligual links to tags and categories in Hugo ?

I faced this issue in my custom Hugo theme. I use kmt theme on this website you are reading on. It is bilingual. You find blog posts in English and their translations in Arabic. But when I click on a …

How to remove all directories inside a specific directory?

How to remove directories in Terminal 🔗 To remove all directories inside a specific directory, you can use the rm command with the -r (recursive) option. This option ensures that the command removes …