Evagoras
Frangou
I build software, explore new platforms, and share what I learn along the way.
- Based in
- Cyprus
- Timezone
- UTC+03:00
- Focus
- Mobile
Limassol, Cyprus local
Engineering, then everything else
Senior Software Engineer and Team Lead based in Limassol, Cyprus, focused on mobile. I build native Android apps in Kotlin and cross-platform apps for Android and iOS with Flutter.
My work leans on solid engineering fundamentals — MVVM, Clean Architecture, dependency injection and clear separation of concerns — rather than framework novelty for its own sake. Outside of shipping product, I build small Android and Flutter libraries, publish open-source templates, and write about the details worth getting right.
- Name
- Evagoras Frangou
- Role
- Senior Software Engineer · Team Lead
- Location
- Limassol, Cyprus
- Education
- BSc Computer Science
- Focus
- MobileAndroidFlutterArchitecture
- Interests
- Open SourceDeveloper ToolingEmerging Android & Flutter tech
Tools I reach for
- Kotlin
- Dart
- Android SDK
- Jetpack Compose
- Flutter
- Wear OS
- MVVM
- Clean Architecture
- Use Cases
- Hilt
- GetIt
- Room
- Drift
- Retrofit
- Dio
- REST
- BLoC
- Compose State
- Git
- GitHub
- Gradle
- IntelliJ / Android Studio
// grouped by evidence from public repositories and published writing,
// not an exhaustive checklist.
Selected work
- 01
sliding_action_button
A published Flutter package that drops in a customizable sliding action button, with pre-defined types and controls for colors, icons and container styling.
↳ A reusable, published package — API design and configurability for other developers to consume.
- Dart
- Flutter
- Package
Dart - 02
Jetpack-Compose-Template-Open-Source
An open-source starter template for Jetpack Compose projects, pre-wired with the basic dependencies and setup so a new app can skip the boilerplate.
↳ Built to save other developers time — the most forked of his repositories.
- Kotlin
- Compose
- Template
Kotlin - 03
pokedex-flutter
A Flutter Pokédex using BLoC with a single-state pattern, a repository layer, GetIt for injection, Dio for networking and a Drift local database.
↳ The reference project behind his four-part Drift database writing series.
- Dart
- Flutter
- BLoC
- Drift
Dart - 04
Pokedex-Android
An Android Pokédex built with the stack Google recommends: MVVM, Hilt for DI, Room, Jetpack Compose, Compose Navigation and type-safe routes.
↳ A native counterpart to the Flutter Pokédex — the same product, two ecosystems.
- Kotlin
- Hilt
- Room
- Compose Navigation
Kotlin - 05
RocketsForWearOS
A Wear OS app built on clean architecture: Jetpack Compose UI, MVVM with a repository layer, use cases, dependency injection and a Retrofit network manager.
↳ Full clean-architecture treatment applied to the constraints of a watch form factor.
- Kotlin
- Wear OS
- Compose
- Clean Architecture
Kotlin - 06
Rockets
An Android sample wiring together Jetpack Compose, MVVM with a repository, use cases, dependency injection, a Retrofit network manager and a Room database.
↳ A compact, end-to-end tour of the modern recommended Android stack.
- Kotlin
- Compose
- MVVM
- Room
Kotlin
Notes from the work
Level Up Android Notifications with Live Progress-Centric Styles (Android 16+)
A look at Android 16's new Progress-Centric (Live) notification styles and how to adopt them.
Navigator Extension in Flutter
A small Flutter extension that trims the boilerplate around Navigator calls.
Live templates in IntelliJ IDEs
Using IntelliJ live templates to stop retyping the same class scaffolding — ViewModels, databases and more.
Drift Local Database For Flutter (Part 1 — Intro, Setup and Migration)
The opening part of a four-part series on integrating the Drift local database into a Flutter app, from setup through migrations and relationships.
Securing sensitive data in Flutter
How to keep API keys and passwords out of source using .env files and secure storage in Flutter.
The new generation of declaring views (View Binding)
Why Android View Binding is a safer successor to Kotlin synthetics for interacting with UI.