Skip to content

Özgür Güler

Software & Digital Product DeveloperMardin, Türkiye

I build mobile apps, web products and automations. Coğrafist, Dönerci and Print Fast are on the App Store and Google Play, and the WTF Yapay Zekâ Android app has passed 50,000 downloads.

On most of these I’m the only developer, so the interface, backend, payments and store releases are all mine.

Projects

Work you can check for yourself: live versions, store pages or source code.

Coğrafist map, home and question screens

Coğrafist

Education app · iOS, Android, webApp Store · Google Play · Web

A map-based app for studying geography for Türkiye’s KPSS civil service exam.

Goal
Let people study geography by playing on a map and answering explained questions instead of memorising lists.
What I built
  • 30+ study modes including map games and an explained question bank, with progress tracking
  • One React + TypeScript codebase, packaged for iOS and Android with Capacitor
  • Firebase for sign-in, data, push notifications and Cloud Functions; RevenueCat for subscriptions
  • A small support-mail system on Cloudflare Workers with D1, R2 and Queues
Outcome
On the App Store and Google Play since April 2026. Web version at cografist.app.
Stack
React · TypeScript · Capacitor · Firebase · RevenueCat · Zustand · Playwright · Cloudflare Workers
galaktikuzay.com home page

Galaktik Uzay

Publishing automation · Cloudflare, Azure OpenAILive · Open source

A pipeline that finds space news, writes a Turkish article, translates it into five languages and publishes it on WordPress.

Goal
I run Galaktik Uzay on my own. I wanted news tracking, writing, image search, translation and publishing to run on a schedule instead of by hand.
What I built
  • A Cloudflare Worker written with Hono: searches news via Tavily, drops duplicates and stale stories using D1, and gets a structured Turkish draft from Azure OpenAI
  • Looks for images on the NASA Images API first, then Serper; publishes or drafts the post through the WordPress REST API
  • A separate translation Worker produces English, German, Spanish, French and Dutch editions, linked together with Polylang
  • A Next.js admin panel that keeps Worker credentials server-side, with HMAC-signed HttpOnly session cookies
Outcome
galaktikuzay.com publishes in six languages. Code and CI are public on GitHub.
Stack
Cloudflare Workers · Hono · D1 · TypeScript · Azure OpenAI · Next.js · WordPress REST API · GitHub Actions
Dönerci shop, decoration and branch screens

Dönerci

Mobile game · Godot 4App Store · Google Play

A 3D tycoon game about running and growing a döner shop.

Goal
Build a mobile game myself and ship it on both stores, including gameplay, ads, purchases and the server side.
What I built
  • Customer flow, table unlocks, staff, a second branch, missions and offline earnings in GDScript
  • Rewarded and interstitial ads with AdMob; purchases with Google Play Billing and StoreKit 2
  • Remote config (KV) and rate-limited error reporting on a Cloudflare Worker
  • Purchase rewards are only granted after server-side receipt validation; a Durable Object stops the same receipt from being processed twice
Outcome
Released on the App Store and Google Play in September 2026. Available in five languages.
Stack
Godot 4 · GDScript · AdMob · Google Play Billing · StoreKit 2 · Cloudflare Workers · Durable Objects · Codemagic
OFile and OPaste interfaces

OFile & OPaste

Developer tools · Cloudflare WorkersLive · Open source

Two small services for sharing files and text from the terminal with a single curl command.

Goal
A fast, tracker-free place where scripts and AI agents can drop files and text without an account.
What I built
  • Both run entirely on Cloudflare Workers; files in R2, metadata in Workers KV
  • Detects curl, wget and PowerShell and answers in plain text; supports uploads from stdin and a /raw endpoint
  • OFile deletes files after 24 hours and OPaste after 30 days; total storage is capped at 8 GB to keep costs predictable
Outcome
Running at files.ozgurguler.tech and paste.ozgurguler.tech. Both repos are MIT-licensed.
Stack
Cloudflare Workers · R2 · Workers KV · JavaScript
Whisper Web Scribe upload screen

Whisper Web Scribe

In-browser speech-to-textLive · Open source

Transcribes audio in the browser without sending it to a server.

Goal
Transcribe audio and video for free, with no backend, without the file leaving the device.
What I built
  • Whisper models (tiny, base, small) run through Transformers.js in a Web Worker, on WebGPU when available and WASM otherwise
  • Word-level timestamps, click any word to jump to it, simple speaker separation
  • Export to JSON, SRT and VTT; six languages
Outcome
Live on Vercel, source on GitHub.
Stack
React 19 · TypeScript · Vite · Transformers.js · WebGPU · Web Workers

Other work

Stack

What I’ve used in the projects above and on my CV.

Frontend / Product
TypeScript, JavaScript, React, Next.js, Vite, Tailwind CSS, Phaser
Backend / APIs
Node.js, Hono, REST, WordPress REST API, Meta Graph API, YouTube API, X API, Telegram Bot API
AI & Automation
Azure OpenAI, OpenAI-compatible APIs, LLM evaluation, Transformers.js, scheduled content pipelines
Cloud & Infrastructure
Cloudflare Workers, R2, KV, Queues, Durable Objects, Firebase, Vercel, Google Cloud, Oracle Cloud
Mobile
Capacitor, Godot 4, RevenueCat, AdMob, StoreKit 2, Google Play Billing, App Store and Google Play releases
Data / Database
SQL, Cloudflare D1, Firestore, Workers KV
Tools
Git, GitHub Actions, Playwright, Wrangler, Codemagic, AI coding tools

About

I live in Mardin, Türkiye. My degree is in health: an associate degree in Oral and Dental Health from Istanbul Yeni Yüzyıl University (2026). My software experience comes from the projects on this page.

On most projects I’m the only developer, so the work doesn’t stop at writing code. Store reviews, payment integrations, error reports and server costs are mine to watch too. For backends I usually reach for Cloudflare Workers, D1 and R2; for mobile, Capacitor or Godot.

I use AI coding tools every day. They make me faster; checking that things actually work and deciding what ships is still my job. When choosing models I prefer measuring to guessing, which is what the LLM Evaluation Toolkit is for.

Content and growth

Alongside software I’ve worked on content. I started the accounts below from scratch and ran paid promotions for the films Siccin and Nazar.