Open for product collaborations

Building thoughtfulsoftware acrossApple platforms and web.

I'm Timo, I design and ship apps with a strong bias for clarity, performance, and clean interaction details.

Timo Leisengang

About

Developer with a product mindset.

I'm Timo, a solo developer from Germany working across iOS, macOS, and web. I like turning rough ideas into products with clear structure and calm, precise interfaces.

Start

Why I began

I started coding because I wanted to build tools people actually use. What began as curiosity became a daily craft.

Now

What I build

Native iOS and macOS apps, responsive web products, and focused utilities that solve specific workflows.

Focus

What I care about

Learning with the help of AI. I believe there is no better time to start than now.

Clear architecture, strong UI rhythm, thoughtful UX, and performance that stays reliable in real-world use.

Toolkit

Apple

SwiftSwiftUIXcode

Web

TypeScriptReactNext.jsNode.jsTailwind CSS

AI

Claude CodeCodexGemini

Projects

Product work with strong technical foundations.

A selection of products I'm building, from vertical SaaS to native Apple apps.

Building

PDF Editor for Mac

A native macOS PDF editor powered by a custom-built Swift PDF engine — no C dependencies, full concurrency support.

SwiftSwiftUI

Two projects in one: a standalone PDF processing engine (parsing, text extraction, encryption, digital signatures, forms, OCR text writing, PDF/A export) and the macOS editor built on top of it. The engine handles low-level PDF manipulation while the app provides the UI — annotations, inline text editing, watermarks, batch processing, merge/split, and cloud storage integration. The engine is a pure Swift package with zero external dependencies.

Building

Pet Service Platform

A SaaS tool for pet sitting and dog walking businesses — scheduling, invoicing, client management, and visit reports in one place.

Next.jsTypeScriptPostgreSQL

Building

Wedding App

A native iOS app that gives couples a digital hub for their wedding — and their guests a way to engage before, during, and after the day.

SwiftSwiftUINext.js

Contact

Let's build something useful.

If you have an idea, product, or collaboration in mind, send a message. I'm especially interested in projects where design quality and technical depth both matter.

dev@leisengang.online

GitHub activity

2,754 contributions in the last year

DecJanFebMarAprMayMonWedFri2 contributions on 2025-12-070 contributions on 2025-12-089 contributions on 2025-12-0912 contributions on 2025-12-1022 contributions on 2025-12-1119 contributions on 2025-12-120 contributions on 2025-12-130 contributions on 2025-12-140 contributions on 2025-12-1514 contributions on 2025-12-161 contribution on 2025-12-1724 contributions on 2025-12-1816 contributions on 2025-12-190 contributions on 2025-12-200 contributions on 2025-12-210 contributions on 2025-12-220 contributions on 2025-12-230 contributions on 2025-12-240 contributions on 2025-12-250 contributions on 2025-12-260 contributions on 2025-12-272 contributions on 2025-12-280 contributions on 2025-12-290 contributions on 2025-12-300 contributions on 2025-12-310 contributions on 2026-01-018 contributions on 2026-01-0212 contributions on 2026-01-036 contributions on 2026-01-042 contributions on 2026-01-052 contributions on 2026-01-061 contribution on 2026-01-074 contributions on 2026-01-083 contributions on 2026-01-090 contributions on 2026-01-101 contribution on 2026-01-116 contributions on 2026-01-1213 contributions on 2026-01-130 contributions on 2026-01-1412 contributions on 2026-01-150 contributions on 2026-01-160 contributions on 2026-01-1737 contributions on 2026-01-18107 contributions on 2026-01-1938 contributions on 2026-01-2077 contributions on 2026-01-2129 contributions on 2026-01-2235 contributions on 2026-01-2323 contributions on 2026-01-2453 contributions on 2026-01-2578 contributions on 2026-01-2661 contributions on 2026-01-2773 contributions on 2026-01-2865 contributions on 2026-01-2920 contributions on 2026-01-3013 contributions on 2026-01-3137 contributions on 2026-02-0154 contributions on 2026-02-029 contributions on 2026-02-0321 contributions on 2026-02-0422 contributions on 2026-02-057 contributions on 2026-02-065 contributions on 2026-02-0712 contributions on 2026-02-0812 contributions on 2026-02-0915 contributions on 2026-02-107 contributions on 2026-02-116 contributions on 2026-02-126 contributions on 2026-02-131 contribution on 2026-02-140 contributions on 2026-02-150 contributions on 2026-02-166 contributions on 2026-02-1721 contributions on 2026-02-1817 contributions on 2026-02-1923 contributions on 2026-02-204 contributions on 2026-02-2133 contributions on 2026-02-228 contributions on 2026-02-235 contributions on 2026-02-249 contributions on 2026-02-254 contributions on 2026-02-261 contribution on 2026-02-270 contributions on 2026-02-281 contribution on 2026-03-010 contributions on 2026-03-021 contribution on 2026-03-034 contributions on 2026-03-0417 contributions on 2026-03-057 contributions on 2026-03-062 contributions on 2026-03-071 contribution on 2026-03-080 contributions on 2026-03-094 contributions on 2026-03-1010 contributions on 2026-03-110 contributions on 2026-03-120 contributions on 2026-03-130 contributions on 2026-03-140 contributions on 2026-03-150 contributions on 2026-03-160 contributions on 2026-03-176 contributions on 2026-03-180 contributions on 2026-03-1911 contributions on 2026-03-203 contributions on 2026-03-2141 contributions on 2026-03-2282 contributions on 2026-03-23112 contributions on 2026-03-2464 contributions on 2026-03-2549 contributions on 2026-03-2627 contributions on 2026-03-2722 contributions on 2026-03-2815 contributions on 2026-03-2936 contributions on 2026-03-3037 contributions on 2026-03-3121 contributions on 2026-04-016 contributions on 2026-04-0218 contributions on 2026-04-037 contributions on 2026-04-049 contributions on 2026-04-057 contributions on 2026-04-068 contributions on 2026-04-079 contributions on 2026-04-0828 contributions on 2026-04-091 contribution on 2026-04-100 contributions on 2026-04-110 contributions on 2026-04-120 contributions on 2026-04-130 contributions on 2026-04-141 contribution on 2026-04-150 contributions on 2026-04-160 contributions on 2026-04-170 contributions on 2026-04-180 contributions on 2026-04-190 contributions on 2026-04-200 contributions on 2026-04-210 contributions on 2026-04-220 contributions on 2026-04-233 contributions on 2026-04-240 contributions on 2026-04-250 contributions on 2026-04-260 contributions on 2026-04-270 contributions on 2026-04-280 contributions on 2026-04-291 contribution on 2026-04-300 contributions on 2026-05-010 contributions on 2026-05-020 contributions on 2026-05-035 contributions on 2026-05-040 contributions on 2026-05-050 contributions on 2026-05-060 contributions on 2026-05-070 contributions on 2026-05-080 contributions on 2026-05-090 contributions on 2026-05-100 contributions on 2026-05-110 contributions on 2026-05-120 contributions on 2026-05-130 contributions on 2026-05-140 contributions on 2026-05-150 contributions on 2026-05-160 contributions on 2026-05-170 contributions on 2026-05-180 contributions on 2026-05-190 contributions on 2026-05-200 contributions on 2026-05-210 contributions on 2026-05-220 contributions on 2026-05-230 contributions on 2026-05-240 contributions on 2026-05-250 contributions on 2026-05-260 contributions on 2026-05-270 contributions on 2026-05-280 contributions on 2026-05-290 contributions on 2026-05-300 contributions on 2026-05-310 contributions on 2026-06-010 contributions on 2026-06-020 contributions on 2026-06-03