30 Day Plan to Learn Flutter from Scratch (Only 1 Hour a Day!)


 

I Started Without Knowing Coding, Now I’m Releasing Apps — You Can Do It Too!

Starting From Scratch Isn’t Scary!

A while ago, I didn’t know what Flutter was. Writing code was a foreign language to me. But there was something inside me:
“I’m a mom and I want to produce.”
“I want to publish my own app one day.”

There were dozens of resources on the internet, but they were scattered. I didn’t know where to start, when and what to learn. I started with the support and guidance of my husband, who is a software developer. Then I made my own way. I created 1-hour gaps and progressed a little more every day with Flutter.

Today, I have apps published on Google Play (I publish my apps from my husband’s developer account 🤭 This alone is an example of my initial discouragement). And now I want to share this journey with you.

Whether you are a student, an employee or a mom… You can start learning Flutter with this 30-day plan. With just 1 hour a day!

For Whom?

I have prepared this plan — based on my retrospective work plans — for:

  • Those who are starting Flutter from scratch,
  • Those who can spare at most 1 hour every day,
  • Those who really want to develop apps but don’t know where to start,
  • Anyone who dreams of producing their own project it.

30-Day Flutter Learning Plan

Daily duration: 60 minutes on average
What you need: Computer, internet, Flutter installation, maybe a coffee
Resources: In English, but in plain English, supported by YouTube videos and sample projects, where you can get support if needed.

Note: If there are any articles I have written on Medium about the topics, I have also linked them. You can also use them as a resource.

Week 1: Installation and Basic Structure Recognition

Day 1: Flutter and Dart Setup
- Download the Flutter SDK, install VS Code or Android Studio.
Official installation guide
- Check your system with Flutter doctor.

Day 2: First Flutter Project
- Start your first application with flutter create my_first_app
- Check the file structure: main.dartpubspec.yaml

Day 3: What is a Widget?
- Stateless and Stateful Widget difference

-Get to know basic widgets like Scaffold, AppBar, Center.

Day 4: Adding Text and Buttons to the Page
- Meet widgets like Text, ElevatedButton

- Show message on button click with OnPressed

Day 5: Using Column, Row, Container
- Basic structures for organizing the screen

Day 6: First Mini Project
- Make a counter application
- Increase the number when you click the button

It comes ready when we create the first project in flutter. Here we are testing ourselves to see if we can build it from scratch. It’s normal to have bugs, it’s also normal to not be able to run it. Keep working without getting demoralized. Stability is everything.

Day 7: Repeat and Review Day
- Take notes, review what you have done
- Write a small blog post if you want (on Medium!)

Week 2 Navigation, Listing and Status Management

Day 8: Navigation between pages
- How does Navigator.push, MaterialPageRoute work?

Day 9: Creating a List with ListView
- Make a list of names using ListView.builder

Day 10: What is State?
- How does setState work? Why is it important?

Day 11: Simple Form and TextField Usage
- Get name from user, print to screen

Day 12: Adding Images in Flutter
- Show image with Assets folder
- define with pubspec.yaml

Day 13: Second Mini Project
- Make a simple “To-Do App”
- Adding and listing tasks

Day 14: Weekend Challenge: Create Your Theme!
- Change colors, customize fonts, use a theme

Week 3: Application Architecture and Introduction to Riverpod

Day 15: Application Architecture Fundamentals
- How to organize the file structure?
lib/screenslib/widgetslib/models

Day 16: Provider and Riverpod Login
- What is Riverpod, why use it?
Riverpod Docs (best guide)

Day 17: Update Your Counter with Riverpod
Rewrite the counter application using StateProvider

Day 18: Redo To-Do App with Riverpod
Manage task list with StateNotifierProvider

Day 19: Creating a Simple Model (model.dart)
- Create the task model, store the list with List<Task>

Day 20: Add Form Validation
- Is the TextField entered? Give warning if empty

Day 21: Feedback Day
- Today just look at what you write, comment, show it to someone if you have one

Week 4: Real Life Project and Preparation for Publication

Day 22: Mini Project Planning
- Choose an idea (examples below)
- Target screens, type functions

Days 23–26: Develop the Project
- For example “Recipes”
- Categories, recipes, favorites screens

Day 27: App Icon and Splash Screen
- use flutter_launcher_icons
- and splash_view packages

Day 28: Local Data Storage (Hive)
- Save user’s data
- Hive example

Day 29: Test Your App
- Try all screens
- Check if it works on your phone

Day 30: Publish on Medium!
- Write a “I made this app” post
- Put it on GitHub, find stakeholders!

Project Ideas (Inspiration to Get Started!)

  • Journaling Practice
  • Healthy Recipes App
  • Word Memorization App
  • Meditation Sounds App
  • Mommy & Baby Diaries

Global Resources

On YouTube:

Final Word: You Can Do It Too!

I started without knowing how to code.
I worked while my child was sleeping. I could only spare 1 hour a day.
But with perseverance and patience, I made my own way.
Now I have applications in the Play Store.

You can do it too.
Start today.
After 30 days, you may have an app you will be proud of.

If this article was useful, don’t forget to like and share it.
It might inspire someone who wants to learn Flutter.

Also, I would love it if you subscribe to be informed about my other content about Flutter and the software world.

Thanks a lot!

Selin.

Sıfırdan Flutter Öğrenmek İçin 30 Günlük Plan (Günde Sadece 1 Saat!)

 


Kodlama Bilmeden Başladım, Şimdi Uygulama Yayınlıyorum — Sen de Yapabilirsin!

Sıfırdan Başlamak Korkutucu Değil!

Bundan bir süre önce, Flutter nedir bilmiyordum. Kod yazmak benim için yabancı bir dildi. Ama içimde bir şey vardı:
“Hem anneyim, hem üretmek istiyorum.”
“Bir gün kendi uygulamamı yayınlamak istiyorum.”

İnternette onlarca kaynak vardı ama dağınıktı. Nereden başlasam, ne zaman ne öğrensem bilemiyordum. Önce yazılımcı olan eşimin desteği ve yol göstermesiyle başladım. Sonra kendi yolumu çizdim. 1 saatlik boşluklar yarattım ve Flutter’la her gün biraz daha ilerledim.

Bugün, Google Play’de yayınladığım uygulamalarım var. (Uygulamalarımı eşimin developer hesabından yayınlıyorum 🤭 Sadece bu bile benim başlangıçtaki cesaretsizliğimin örneği aslında.). Ve şimdi bu yolculuğu seninle paylaşmak istiyorum.

İster öğrenci ol, ister çalışan, ister anne… Bu 30 günlük planla sen de Flutter’ı öğrenmeye başlayabilirsin. Hem de günde sadece 1 saat ayırarak!

Kimler İçin?

Bu planı tıpkı benim gibi:

  • Flutter’a sıfırdan başlayanlar için,
  • Her gün en fazla 1 saat ayırabilenler için,
  • Uygulama geliştirmeyi gerçekten isteyen ama nereden başlayacağını bilemeyenler için,
  • Kendi projesini üretmeyi hayal eden herkes için — geriye dönük çalışma planlarıma bakarak — hazırladım.

30 Günlük Flutter Öğrenme Planı

Günlük süre: Ortalama 60 dakika
İhtiyacın olanlar: Bilgisayar, internet, Flutter kurulumu, belki bir kahve
Kaynaklar: İngilizce ama sade, gerektiğinde destek alabileceğin YouTube videoları ve örnek projelerle desteklenecek.

Not: Konu başlıkları ile ilgili benim Medium’da yazmış olduğum yazı var ise onları da linkledim. Kaynak olarak onları da kullanabilirsin.

Hafta 1: Kurulum ve Temel Yapıyı Tanıma

Gün 1: Flutter ve Dart Kurulumu

Gün 2: İlk Flutter Projesi

  • flutter create my_first_app komutu ile ilk uygulamanı başlat.
  • Dosya yapısına göz at: main.dartpubspec.yaml

Gün 3: Widget Nedir?

  • Stateless ve Stateful Widget farkı
  • Scaffold, AppBar, Center gibi temel widget’ları tanı.

Gün 4: Sayfaya Yazı ve Buton Ekleme

  • Text, ElevatedButton gibi widget’larla tanış
  • OnPressed ile butona tıklayınca mesaj göster

Gün 5: Column, Row, Container Kullanımı

  • Ekranı düzenlemek için temel yapılar

Gün 6: İlk Mini Proje

  • Bir sayaç uygulaması yap
  • Butonuna tıklayınca sayı artsın

Bunu flutter’da ilk projeyi oluşturduğumuzda zaten hazır bir şekilde getiriyor. Burada kendimiz deneyerek bunu sıfırdan yapabilir miyiz, onu test ediyoruz. Hatalar olması çok normal, çalıştıramamak da öyle. Moral bozmadan çalışmaya devam. İstikrar her şeydir.

Gün 7: Tekrar ve Review Günü

  • Notlarını al, yaptıklarını gözden geçir
  • İstersen küçük bir blog yazısı yaz (Medium’da!)

Hafta 2: Navigasyon, Listeleme ve Durum Yönetimi

Gün 8: Sayfalar Arası Geçiş (Navigation)

  • Navigator.pushMaterialPageRoute nasıl çalışır?

Gün 9: ListView ile Liste Oluşturma

  • ListView.builder kullanarak isimler listesi yap

Gün 10: Durum (State) Nedir?

  • setState nasıl çalışır? Neden önemlidir?

Gün 11: Basit Form ve TextField Kullanımı

  • Kullanıcıdan isim al, ekrana yazdır

Gün 12: Flutter’da Görsel Ekleme

  • Assets klasörüyle resim gösterme
  • pubspec.yaml ile tanımlama

Gün 13: İkinci Mini Proje

  • Basit bir “Görev Listesi” (To-Do App) yap
  • Görev ekleme ve listeleme işlemleri

Gün 14: Hafta Sonu Challenge: Temanı Yarat!

  • Renkleri değiştir, fontları özelleştir, tema kullan

Hafta 3: Uygulama Mimarisi ve Riverpod ile Tanışma

Gün 15: Uygulama Mimarisi Temelleri

  • Dosya yapısı nasıl düzenlenir?
  • lib/screenslib/widgetslib/models

Gün 16: Provider ve Riverpod Girişi

Gün 17: Riverpod ile Sayacını Güncelle

  • StateProvider kullanarak sayaç uygulamasını yeniden yaz

Gün 18: Riverpod ile To-Do App’i Yeniden Yap

  • StateNotifierProvider ile görev listesini yönet

Gün 19: Basit Model Oluşturma (model.dart)

  • Görev modelini oluştur, List<Task> ile listeyi sakla

Gün 20: Form Validasyonu Ekle

  • TextField girildi mi? Boşsa uyarı ver

Gün 21: Geri Bildirim Günü

  • Bugün sadece yazdıklarına bak, yorum yap, varsa birine göster

Hafta 4: Gerçek Hayat Projesi ve Yayına Hazırlık

Gün 22: Mini Proje Planlaması

  • Bir fikir seç (örnekler aşağıda)
  • Hedef ekranları, işlevleri yaz

Gün 23–26: Projeyi Geliştir

  • Örneğin: “Yemek Tarifleri”
  • Kategoriler, tarifler, favoriler ekranları

Gün 27: Uygulama İkonu ve Splash Ekranı

Gün 28: Lokal Veri Saklama (Hive)

  • Kullanıcının verilerini kaydet
  • Hive örneği

Gün 29: Uygulamanı Test Et

  • Tüm ekranları dene
  • Telefonunda çalışıyor mu kontrol et

Gün 30: Medium’da Yayınla!

  • “Ben bu uygulamayı yaptım” yazısı yaz
  • GitHub’a koy, paydaşlar bul!

Proje Fikirleri (Başlaman İçin İlham!)

  • Günlük Tutma Uygulaması
  • Sağlıklı Tarifler Uygulaması
  • Kelime Ezberleme Uygulaması
  • Meditasyon Sesleri Uygulaması
  • Anne & Bebek Günlükleri

Global Kaynaklar

YouTube’da:

Son Söz: Sen de Yapabilirsin!

Ben kod yazmayı bilmeden başladım.
Çocuğum uyurken çalıştım. Günde sadece 1 saat ayırabildim.
Ama azimle, sabırla, kendi yolumu çizdim.
Şimdi ise Play Store’da uygulamalarım var.

Sen de yapabilirsin.
Bugün başla.
30 gün sonra gurur duyacağın bir uygulaman olabilir.

Bu yazı faydalı olduysa, beğenmeyi ve paylaşmayı unutma.
Flutter öğrenmek isteyen birine ilham olabilir.

Ayrıca Flutter ve yazılım dünyası ile ilgili diğer içeriklerimden haberdar olmak için abone olursan çok sevinirim.

Teşekkürler.

Selin.