Projects

Portfolio of open-source tools, production client work, and experiments. Each featured item below is written for outcomes (problem → what shipped), not just stacks.

Looking to hire or collaborate?Work with me · Resume


run-kit

Problem: Run and iterate on polyglot snippets without juggling N local toolchains.

Outcome: One CLI for 25+ languages, stateful REPL behavior, and CI-friendly workflows — reduces friction for teaching, tooling, and quick validation.

Stack: Rust · GitHub Actions — Active development


Star Growth

Problem: Stargazer growth is invisible in flat GitHub UI.

Outcome: Shareable animations of star history for marketing and community updates.

Stack: Python · GitHub Actions — Active


Cadastral Information System (INTAPS)

Problem: Cities need reliable land and ownership data for planning and services.

Outcome: Mission-critical cadastre platform (v10) for major Ethiopian cities — high availability expectations, GIS-scale data, institutional users.

Stack: C# · ASP.NET Core · PostgreSQL · React — Production


Machine learning & NLP

Emotion Classification

Problem: Large Telegram groups need a sense of emotional tone beyond raw volume.

Outcome: BERT-based classifier for group-chat emotion — research/iteration path toward production-style NLP.

Stack: Python · Jupyter · BERT


CubeSat image prioritization

Problem: Satellite downlink is limited; not every image is worth sending.

Outcome: Hackathon 3rd place (Hack4dev): lightweight CV model to prioritize frames and reduce wasted bandwidth.

Stack: Python · TensorFlow · Computer vision


Sentiment pipeline

Problem: Communities want aggregate sentiment from noisy chat logs.

Outcome: Trained sentiment pipeline surfaced via Telegram for real group data.

Stack: Python · NLP


Web applications (selected)

Project Problem → outcome Stack
Modern Dictionary Unified lookup across major English dictionaries Next.js · ASP.NET Core
Ethiopian Dictionary Ethiopian language translation with Gemini Next.js · Gemini
Guade AI-generated practice for any subject Next.js · PostgreSQL · Gemini
Wereb Collection Curated liturgical music access Next.js
WikiRandom Lightweight discovery reading Next.js
Telegram Analysis Conversation insights for users Next.js

Python packages

  • britannica-dictionary — Crawl and package dictionary data; published on PyPI with companion site and bot.
  • AfrimPyPyO3 bindings exposing the Afrim input engine to Python.
  • Wereb — Utility downloads for liturgical audio (BeautifulSoup).

Telegram bots (sampler)


Most non-client tools are public hobby/OSS projects. More apps and bots: hagerie.esubalew.et.

Work with me · Blog · Contributions