Files
neta/ROADMAP.md
T
Poyraz Avsever 35dd88b5af feat: implement project management features with cover images and planning sections
- Add ProjectsClient component for managing projects with a grid and list view.
- Introduce project cover image functionality and related fields in the database.
- Create a new table for project planning sections with RLS policies for user access.
- Update global styles for scrollbar customization.
- Enhance Next.js configuration for server actions with increased body size limit.
- Document new database migration for project planning assets.
2026-06-04 15:45:51 +03:00

23 KiB
Raw Blame History

Freelancer OS Roadmap

Bu dokuman, uygulamanin temel urun yonunu ve MVP kapsamını tanımlar.

Uygulamanin cikis noktasi: Freelancer'larin gundelik hayatlarini, musterilerini, projelerini, side project'lerini, finansal durumlarini ve kisisel performanslarini tek bir self-host edilebilir dashboard uzerinden yonetebilmesi.

MVP, tek kullanici odakli olacak. Ekip, ajans, CRM otomasyonlari, gelismis AI modulleri ve mobil uygulama MVP sonrasi fazlara birakilir.


Urun Vizyonu

Freelancer icin tek merkezli bir operasyon paneli:

  • Bugun ne yapacagim?
  • Hangi musteride hangi is var?
  • Hangi proje gecikiyor?
  • Side project'lerimde ilerleme var mi?
  • Bu ay ne kadar kazandim, ne kadar harcadim?
  • Enerjim ve ruh halim is performansimi nasil etkiliyor?
  • Tum bu verilerden hangi raporu okuyabilirim?

Uygulama, klasik gorev takip aracindan daha genis; freelancer'in is, finans ve kisisel performans alanlarini birlestiren bir "Freelancer OS" olarak konumlanir.


MVP Ilkeleri

  1. Tek kullanici

    • MVP'de ekip, rol, yetki, assignee, ortak calisma yok.
    • Tum veriler tek kullanicinin kendi calisma alani icindir.
  2. Self-host ve open-source uyumlu

    • Kurulum dokumani net olmali.
    • Veritabani migration'lari repo icinde olmali.
    • Harici servisler opsiyonel olmali.
  3. Gercek veri, sade akis

    • Mock dashboard yerine kullanicinin girdigi gercek verilerden rapor uretilecek.
    • Her modulde minimum CRUD ve minimum rapor yeterli.
  4. AI destekleyici, cekirdek degil

    • MVP'de AI sadece genel chatbot olarak konumlanir.
    • Chatbot, kayitli gorev/proje/musteri/finans/gunluk verileri hakkinda soru cevap yapabilir.
    • Modul icindeki otomatik oneriler, scoring, akilli otomasyonlar MVP sonrasi.
  5. Ekranda rapor yeterli

    • MVP'de PDF/PNG export sart degil.
    • Dashboard ve modul rapor ekranlari yeterli kabul edilir.

MVP Kapsami

1. Dashboard

Amac: Freelancer'in gunluk ve haftalik durumunu tek bakista gostermek.

MVP icerigi:

  • Bugunku gorevler
  • Yaklasan takvim etkinlikleri
  • Aktif musterilerden acik isler
  • Aktif projeler ve side project'ler
  • Bu ay gelir/gider ozeti
  • Haftalik gorev tamamlama grafigi
  • Mood/energy trend grafigi
  • Geciken isler ve yaklasan deadline'lar

Raporlar:

  • Haftalik is yuklemesi
  • Proje ilerleme ozeti
  • Aylik finans ozeti
  • Kisisel enerji/mood ozeti

2. Musteriler

Amac: Freelancer'in calistigi musterileri ve o musterilerle iliskili isleri takip etmesi.

MVP alanlari:

  • Musteri adi
  • Firma/marka adi
  • E-posta
  • Telefon veya iletisim notu
  • Durum: active, paused, archived
  • Notlar

MVP aksiyonlari:

  • Musteri ekleme
  • Musteri duzenleme
  • Musteri arsivleme
  • Musteriye bagli projeleri/gorevleri gorme

Raporlar:

  • Aktif musteri sayisi
  • Musteri bazli proje sayisi
  • Musteri bazli gelir ozeti

MVP disi:

  • Gelismis CRM pipeline
  • E-posta entegrasyonu
  • Otomatik takip hatirlatmalari
  • Musteri sentiment analizi

3. Projeler ve Side Project'ler

Amaç: Müşteri projeleri ve kişisel side project'leri aynı temel mantıkla ama ayrı türlerle takip etmek. Proje yönetimi yalnızca görevlerden oluşmaz; proje hedefi, çözdüğü problem, kapsamı, görsel kimliği ve planlama notları da projenin ana parçasıdır.

MVP alanları:

  • Proje adı
  • Tür: client_project, side_project
  • Bağlı müşteri, sadece client_project için opsiyonel/zorunlu
  • Kapak görseli, kullanıcının bilgisayarından yüklenir
  • Kapak görseli alt metni
  • Açıklama
  • Durum: planning, active, paused, completed, cancelled
  • Başlangıç tarihi
  • Deadline
  • Bütçe veya beklenen gelir
  • İlerleme yüzdesi, görevlerden otomatik hesaplanabilir veya manuel güncellenebilir

MVP proje detay alanları:

  • Genel bakış: Projenin kısa özeti, mevcut durum ve önemli notlar
  • Çözdüğü problem: Hangi kullanıcı/müşteri problemini çözdüğü
  • Amaç ve başarı kriterleri: Proje bittiğinde neyin başarılı kabul edileceği
  • Hedef kitle: Projenin kimin için yapıldığı
  • Kapsam: Dahil olan ve dahil olmayan işler
  • Design system: Renk paleti, tipografi, component notları ve görsel dil
  • Renk paleti: Hex değerleri, kullanım rolleri ve notlar
  • Tipografi: Font ailesi, başlık/gövde kullanımı ve hiyerarşi notları
  • Görsel varlıklar: Kapak görseli ve proje içi görsel referanslar
  • Serbest notlar: Projeye özel planlama notları

MVP aksiyonları:

  • Proje ekleme
  • Proje düzenleme
  • Projeye bilgisayardan kapak görseli yükleme
  • Proje detay sayfasında görev dışı planlama alanlarını yönetme
  • Proje detayında design system alanları ekleme/düzenleme
  • Projeye görev bağlama
  • Proje durumunu güncelleme
  • Projeyi tamamlandı olarak işaretleme

Raporlar:

  • Aktif proje sayısı
  • Geciken proje sayısı
  • Proje bazlı görev tamamlama oranı
  • Müşteri projeleri / side project dağılımı
  • Design system alanı eksik olan aktif projeler
  • Amaç veya problem tanımı eksik olan projeler

MVP dışı:

  • Ekip üyeleri
  • Gelişmiş dosya/drive yönetimi
  • Kanban sprint sistemi
  • Gelişmiş risk analizi

4. Gorevler

Amac: Freelancer'in gunluk operasyonunu yonetmek.

MVP alanlari:

  • Baslik
  • Aciklama
  • Durum: todo, in_progress, done
  • Oncelik: low, medium, high, urgent
  • Son tarih
  • Bagli proje
  • Bagli musteri, proje uzerinden de turetilebilir
  • Tahmini sure
  • Gerceklesen sure, basit manuel giris olarak

MVP aksiyonlari:

  • Gorev ekleme
  • Gorev duzenleme
  • Gorev tamamlama
  • Liste ve basit kanban gorunumu
  • Geciken gorevleri filtreleme

Raporlar:

  • Haftalik tamamlanan gorev sayisi
  • Duruma gore gorev dagilimi
  • Oncelige gore gorev dagilimi
  • Proje bazli acik gorevler

MVP disi:

  • Team assignee
  • Otomatik AI onceliklendirme
  • Gelismis time tracking timer

5. Takvim

Amac: Deadline, toplanti, odak blogu ve kisisel etkinlikleri planlamak.

MVP alanlari:

  • Baslik
  • Baslangic tarihi/saati
  • Bitis tarihi/saati
  • Tur: meeting, focus, deadline, personal, finance
  • Bagli musteri/proje/gorev
  • Not

MVP aksiyonlari:

  • Etkinlik ekleme
  • Etkinlik duzenleme
  • Aylik gorunum
  • Yaklasan etkinlik listesi

Raporlar:

  • Haftalik etkinlik dagilimi
  • Odak bloklari / toplantilar orani
  • Yaklasan deadline listesi

MVP disi:

  • Google Calendar entegrasyonu
  • Iki yonlu sync
  • AI schedule optimization

6. Finans

Amac: Freelancer'in temel gelir, gider ve nakit akis durumunu takip etmesi.

MVP alanlari:

  • Islem tipi: income, expense
  • Tutar
  • Para birimi
  • Tarih
  • Kategori
  • Bagli musteri
  • Bagli proje
  • Aciklama
  • Odeme durumu: planned, pending, paid, cancelled

MVP aksiyonlari:

  • Gelir ekleme
  • Gider ekleme
  • Islem duzenleme
  • Islem silme/arsivleme
  • Aylik filtreleme

Raporlar:

  • Aylik gelir
  • Aylik gider
  • Net kazanc
  • Musteri bazli gelir
  • Proje bazli gelir
  • Kategori bazli gider

MVP disi:

  • Fatura olusturma
  • Vergi hesaplama
  • Banka entegrasyonu
  • Subscription tracking
  • Coklu sirket/hesap

7. Gunluk Mood / Energy

Amac: Freelancer'in kisisel kapasitesini ve is performansiyla iliskisini takip etmek.

MVP alanlari:

  • Tarih
  • Mood skoru
  • Energy skoru
  • Kisa not
  • Calisma memnuniyeti skoru, opsiyonel

MVP aksiyonlari:

  • Gunluk kayit ekleme
  • Kayit duzenleme
  • Haftalik/aylik trend izleme

Raporlar:

  • Mood trend
  • Energy trend
  • Energy ile tamamlanan gorev iliskisi
  • Dusuk enerji gunlerinde geciken gorevler

MVP disi:

  • AI duygu analizi
  • Otomatik etiketleme
  • Klinik/terapötik yorumlar

8. AI Chatbot

Amac: Kullanici, kendi kayitli verileri hakkinda genel sorular sorabilsin.

MVP davranisi:

  • Son 7/30 gun gorevleri, projeleri, takvim etkinlikleri, finans kayitlari ve mood/energy verileri context olarak hazırlanır.
  • Kullanici basit sorular sorar:
    • "Bu hafta en cok hangi projeye zaman harcamisim?"
    • "Hangi musterilerden odeme bekliyorum?"
    • "Bu ay finansal durumum nasil?"
    • "Geciken islerim neler?"
    • "Enerjim dusukken hangi isler aksamis?"

Teknik yaklasim:

  • MVP'de tam vector RAG sart degil.
  • Ilk asama: veritabanindan ilgili ozet context olusturup modele gondermek.
  • Provider opsiyonlari: Ollama local, OpenAI, Gemini, Groq.

MVP disi:

  • Embedding tabanli gelismis RAG
  • Modul ici AI butonlari
  • Otomatik gorev/proje onerisinde bulunma
  • Otomatik finans yorumu
  • Otonom aksiyon alma

MVP Disi Birakilacaklar

Asagidaki ozellikler ilk surume alinmayacak:

  • Ekip ve rol yonetimi
  • Gelismis CRM pipeline
  • Teklif ve sozlesme sistemi
  • Fatura olusturma
  • Banka veya odeme entegrasyonlari
  • Dokuman/drive yonetimi
  • PDF/PNG export
  • Mobil uygulama
  • Google Calendar sync
  • Modul bazli AI otomasyonlari
  • Gelismis RAG/vector search
  • Bildirim sistemi

Teknik Mimari Karari

Onerilen MVP Stack

  • Frontend: Next.js App Router, React, TypeScript
  • UI: Poyraz UI, Tailwind CSS v4, Recharts
  • Database: PostgreSQL
  • Backend/Auth: Supabase veya self-host edilebilir Supabase alternatifi
  • Local AI opsiyonu: Ollama
  • Cloud AI opsiyonlari: OpenAI, Gemini, Groq

UI Karari

MVP tasarimi Poyraz UI ile light design olarak kurulacak.

Mevcut dark shadcn/Radix agirlikli prototip tasarim sistemi MVP icin referans alinmayacak. Sayfalar Poyraz UI bilesenleri, poyraz-ui/preset.css token sistemi ve Poyraz UI semantic renkleri uzerinden yeniden insa edilecek.

Gecis prensipleri:

  • Ilk hedef login, register ve sidebar gibi uygulama kabugu ekranlari.
  • Daha sonra Faz 2'de her modul kendi CRUD akisi gelistirilirken Poyraz UI'a tasinacak.
  • Light design varsayilan olacak.
  • Dark mode MVP icin zorunlu degil; Poyraz UI destekledigi icin sonraki fazlarda eklenebilir.
  • Eski UI bilesenleri sadece gecici olarak kullanilabilir; yeni sayfa ve moduller Poyraz UI ile yazilacak.

Neden Server-first?

Mobil uygulama sonraki hedef oldugu icin verinin senkronize olabilecegi merkezi bir backend gerekir. Bu nedenle MVP'de ana kaynak PostgreSQL/Supabase olmali.

Offline/local-first destek daha sonra eklenebilir:

  • IndexedDB cache
  • Offline draft kayitlari
  • Sync queue
  • Conflict resolution

MVP'de bu alan mimaride dusunulur, fakat ana risk haline getirilmez.


MVP Veri Modeli

Minimum tablolar:

  • profiles
  • clients
  • projects
  • project_planning_sections
  • tasks
  • calendar_events
  • finance_transactions
  • daily_logs
  • chat_sessions
  • chat_messages
  • app_settings
  • Supabase Storage bucket: project-assets

Temel iliskiler:

  • clients -> projects
  • projects -> project_planning_sections
  • projects -> tasks
  • clients -> finance_transactions
  • projects -> finance_transactions
  • calendar_events -> clients, projects, tasks opsiyonel
  • daily_logs -> kullanici ve tarih
  • chat_messages -> chat_sessions

Faz Plani

Faz 0: Stabilizasyon

Amac: Mevcut prototipi build edilebilir ve gelistirilebilir hale getirmek.

Isler:

  • Build hatalarini gidermek.
  • Urun adini netlestirmek: Cognis.
  • Encoding bozukluklarini temizlemek.
  • Mock veri kullanan ekranlari isaretlemek.
  • user_settings yerine app_settings semasini netlestirmek.
  • Supabase SQL dosyalarini sira, dokumantasyon ve calistirma kaydi olan bir sisteme oturtmak.
  • Mevcut supabase/schema.sql dosyasini ilk database baseline olarak kaydetmek.
  • Her yeni SQL ekinde ilgili dokumani ve query log kaydini zorunlu hale getirmek.
  • MVP disi ekranlari sidebar'dan gecici olarak kaldirmak veya "coming later" durumuna almak.

Kabul kriteri:

  • npm run build basarili.
  • Ana layout, auth ve dashboard sorunsuz acilir.
  • MVP kapsamindaki moduller net gorunur.
  • Database query sirasi docs/database/query-order.md icinde kayitlidir.
  • Calistirilan SQL dosyalari docs/database/query-log.md icinde takip edilir.
  • Ilk baseline olan supabase/schema.sql icin aciklayici dokuman vardir.

Faz 1: Veritabani ve Auth

Amac: Freelancer OS icin gercek veri modelini kurmak.

Isler:

  • clients, projects, tasks, calendar_events, finance_transactions, daily_logs, app_settings tablolarini olusturmak.
  • RLS politikalari eklemek.
  • Supabase migration dosyalarini repo icine almak.
  • Seed/demo data script'i hazirlamak.
  • Tek kullanici akisina uygun auth'u sade tutmak.

Kabul kriteri:

  • Yeni tablolar Supabase'de calisir.
  • Kullanici sadece kendi verisini gorur.
  • Demo data ile dashboard beslenebilir.

Faz 1 repo ciktisi:

  • Core schema migration: supabase/migrations/0002_add_freelancer_os_core_tables.sql
  • Demo seed dosyasi: supabase/seeds/0001_demo_freelancer_os_data.sql
  • Migration dokumani: docs/database/0002-freelancer-os-core-tables.md
  • Seed dokumani: docs/database/seed-0001-demo-freelancer-os-data.md
  • Query sirasi kaydi: docs/database/query-order.md

Not: SQL dosyalari repo icinde hazirdir. Supabase ortaminda calistirildiktan sonra docs/database/query-log.md guncellenmelidir.


Faz 1.5: Poyraz UI Tasarim Sistemi Gecisi

Amac: Mevcut koyu prototip tasarimindan ayrilip uygulama kabugunu Poyraz UI tabanli light design sistemine tasimak.

Isler:

  • poyraz-ui paketini projeye eklemek.
  • Global CSS icinde Poyraz UI preset importunu yapmak: @import "poyraz-ui/preset.css";
  • Tailwind CSS v4 gereksinimini ve mevcut Tailwind yapisiyla uyumlulugu netlestirmek.
  • Poyraz UI light tokenlarini varsayilan tasarim dili olarak ayarlamak.
  • Mevcut shadcn/Radix agirlikli dark auth tasarimini Poyraz UI ile degistirmek.
  • Login sayfasini Poyraz UI atoms/molecules ile yeniden kurmak.
  • Register sayfasini Poyraz UI atoms/molecules ile yeniden kurmak.
  • Dashboard shell ve sidebar'i Poyraz UI navigation/organism yaklasimina gore yeniden kurmak.
  • Eski dark background, gradient, glow ve agir motion desenlerini uygulama kabugundan kaldirmak.
  • Poyraz UI kullanim notlarini proje dokumantasyonuna baglamak.

Kabul kriteri:

  • Login light design ile Poyraz UI bilesenleri kullanarak calisir.
  • Register light design ile Poyraz UI bilesenleri kullanarak calisir.
  • Sidebar ve temel dashboard shell Poyraz UI tasarim diliyle uyumludur.
  • Uygulama varsayilan olarak light gorunur.
  • npm run build basarili olur.

Notlar:

  • Bu fazda modul ic sayfalarinin tamamini yeniden tasarlamak zorunlu degildir.
  • Modul sayfalari Faz 2'de CRUD gelistirme sirasinda Poyraz UI'a tasinir.
  • Poyraz UI rehberi: poyraz-ui-usage-guide.md

Faz 1.5 repo ciktisi:

  • Poyraz UI paketi projeye eklendi.
  • Tailwind CSS v4 ve @tailwindcss/postcss gecisi yapildi.
  • Global CSS, poyraz-ui/preset.css ve light Poyraz tokenlariyla guncellendi.
  • Login ve register sayfalari Poyraz UI atomlariyla yeniden kuruldu.
  • Dashboard shell ve sidebar Poyraz UI organism yaklasimina tasindi.

Faz 2: Core CRUD Modulleri

Amac: Freelancer'in temel operasyon verilerini girebilmesi.

Isler:

  • Musteriler CRUD
    • Liste, bos durum, ekleme/duzenleme formu ve detay gorunumu Poyraz UI ile kurulur.
    • Eski CRM/prototip gorsel dili kaldirilir.
  • Projeler/side project CRUD
    • Proje kartlari, filtreler, detay paneli ve form akislari Poyraz UI ile kurulur.
    • Musteri projesi ve side project ayrimi UI'da net gosterilir.
    • Proje kapak gorseli bilgisayardan yuklenebilir; harici gorsel linki MVP icin ana akis olmaz.
    • Proje detay sayfasi eklenir.
    • Proje detayinda gorevler disinda planlama alanlari yonetilir: genel bakis, cozdugu problem, amac, hedef kitle, kapsam, design system, renk paleti, tipografi, gorsel varliklar ve notlar.
    • Design system alaninda renk paleti, tipografi ve component/gorsel dil notlari eklenebilir ve duzenlenebilir.
    • Proje detay sayfasi proje icin tek kaynak olur; gorevler sadece bu kaynak icindeki operasyon katmanidir.
  • Gorevler CRUD
    • Liste ve basit kanban Poyraz UI bilesenleriyle yeniden tasarlanir.
    • Durum, oncelik, deadline ve proje iliskisi icin Poyraz UI Badge/Form/Select kullanilir.
  • Takvim etkinlikleri CRUD
    • Aylik gorunum ve yaklasan etkinlik listesi light design ile kurulur.
    • Etkinlik formu Poyraz UI form bilesenleriyle yazilir.
  • Finans islemleri CRUD
    • Gelir/gider listesi, finans kartlari ve islem formu Poyraz UI ile kurulur.
    • Rapor kartlari Poyraz UI StatsCard/Card yaklasimina uygun olur.
  • Daily mood/energy CRUD
    • Gunluk kayit formu, trend ozeti ve kayit listesi Poyraz UI ile kurulur.
    • Mood/energy secimleri light, sade ve form odakli olur.

Kabul kriteri:

  • Mock data yerine gercek veriler kullanilir.
  • Her modulde liste, ekleme, duzenleme ve temel silme/arsivleme vardir.
  • Bos durumlar kullaniciyi dogru aksiyona yonlendirir.
  • Faz 2 kapsamindaki her yeni/yenilenen modul Poyraz UI bilesenleriyle yazilir.

Proje Detay MVP Planı

Bu bölüm, Faz 2 içindeki Projeler/Side Project modülünün görev takibinden daha geniş bir proje yönetim alanına dönüşmesi için detaylı uygulama planıdır.

1. Liste ve Oluşturma

Amaç: Kullanıcı projeyi hızlıca oluşturabilsin ve görsel kimliğini ilk anda belirleyebilsin.

Alanlar:

  • Proje adı
  • Tür: müşteri projesi veya side project
  • Bağlı müşteri
  • Kapak görseli
  • Kapak görseli alt metni
  • Kısa açıklama
  • Durum
  • Başlangıç tarihi
  • Deadline
  • Bütçe / beklenen gelir
  • İlerleme yüzdesi

Davranış:

  • Görsel bilgisayardan seçilir ve project-assets bucket'ına yüklenir.
  • Görsel yolu projects.cover_image_path alanında saklanır.
  • Görsel link ile ekleme MVP akışı değildir.
  • Görsel yüklenmezse proje kartında sade placeholder gösterilir.

2. Proje Detay Sayfası

Amaç: Proje ile ilgili görev dışı tüm planlama bilgisini tek merkezde yönetmek.

Route önerisi:

  • /projects/[id]

Ana bölümler:

  • Özet
  • Planlama
  • Design system
  • Görevler
  • Finans bağlantıları
  • Zaman çizelgesi

İlk MVP için zorunlu bölümler:

  • Özet
  • Planlama
  • Design system
  • Görevler

3. Özet Bölümü

İçerik:

  • Kapak görseli
  • Proje adı
  • Müşteri veya side project etiketi
  • Durum
  • İlerleme
  • Deadline
  • Bütçe
  • Kısa açıklama

Amaç:

  • Kullanıcı projeye girdiğinde projenin ne olduğunu ve hangi durumda olduğunu ilk bakışta anlar.

4. Planlama Bölümü

Bu bölüm project_planning_sections tablosundan beslenir.

MVP kategorileri:

  • Genel bakış (overview)
  • Çözdüğü problem (problem)
  • Amaç (goal)
  • Hedef kitle (audience)
  • Kapsam (scope)
  • Notlar (notes)

Her kategori için:

  • Başlık
  • Açıklama / içerik
  • Sıralama
  • Opsiyonel metadata

Kullanım:

  • Kullanıcı kategori ekleyebilir.
  • Kullanıcı kategori düzenleyebilir.
  • Kullanıcı kategori silebilir.
  • Kategoriler proje detayında ayrı kartlar halinde gösterilir.

5. Design System Bölümü

Bu bölüm de project_planning_sections tablosunu kullanır.

MVP kategorileri:

  • Design system (design_system)
  • Renk paleti (color_palette)
  • Tipografi (typography)
  • Görsel varlıklar (assets)

Design system alanları:

  • Genel görsel dil
  • Kullanılacak UI kit veya referans sistem
  • Component notları
  • Spacing / radius / shadow notları

Renk paleti alanları:

  • Renk adı
  • Hex değeri
  • Kullanım rolü: primary, secondary, accent, background, text, border
  • Not

Tipografi alanları:

  • Font ailesi
  • Başlık kullanımı
  • Gövde metni kullanımı
  • Boyut/hiyerarşi notları

MVP yaklaşımı:

  • İlk sürümde renk paleti ve tipografi structured JSON metadata içinde tutulabilir.
  • UI tarafında bu metadata sade form alanlarıyla düzenlenir.
  • Gerekirse MVP sonrası project_colors ve project_typography_tokens gibi ayrı tablolara bölünebilir.

6. Görevler Bölümü

Amaç:

  • Projeye bağlı görevleri proje detayından da yönetebilmek.

MVP kapsamı:

  • Projeye bağlı görevleri listeleme
  • Yeni görev ekleme
  • Görev durumunu güncelleme
  • Görevi tamamlandı işaretleme

Bu bölüm görev modülüyle aynı veriyi kullanır; ayrı bir görev sistemi kurulmaz.

7. Görsel Varlık Yönetimi

MVP kapsamı:

  • Proje kapak görseli yükleme
  • Kapak görselini değiştirme
  • Kapak görseli alt metni düzenleme

MVP dışı:

  • Çoklu dosya klasör yapısı
  • Versiyonlama
  • Dosya yorumları
  • Gelişmiş medya kütüphanesi

Storage kuralı:

  • Bucket: project-assets
  • Path: <user_id>/projects/<project_id>/<file_name>
  • Bucket private olur.
  • Uygulama görsel gösterirken signed URL üretir.

8. Uygulama Sırası

  1. Database migration: 0003_add_project_planning_assets.sql
  2. Proje formuna kapak görseli yükleme alanı ekle
  3. Proje kartlarında kapak görseli göster
  4. /projects/[id] detay sayfasını oluştur
  5. Proje detay özet bölümünü gerçek veriyle kur
  6. project_planning_sections CRUD action'larını ekle
  7. Planlama bölümü kartlarını ekle
  8. Design system bölümünü ekle
  9. Projeye bağlı görevler bölümünü detay sayfasına bağla
  10. Dashboard raporlarında design system/problem/amaç eksikliği gibi proje sağlık sinyallerini kullan

9. Kabul Kriterleri

  • Kullanıcı proje oluştururken bilgisayarından kapak görseli yükleyebilir.
  • Proje kartında ve detay sayfasında kapak görseli görünür.
  • Kullanıcı proje detayında görevler dışında proje planlama alanlarını yönetebilir.
  • Kullanıcı design system, renk paleti ve tipografi notlarını ekleyebilir.
  • Tüm veriler kullanıcı bazlı RLS ile korunur.
  • npm run build başarılı olur.

Faz 3: Dashboard ve Raporlama

Amac: Girilen verileri anlamli grafiklere ve rapor kartlarina donusturmek.

Isler:

  • Dashboard KPI kartlari
  • Gorev tamamlama grafikleri
  • Proje ilerleme grafikleri
  • Musteri/proje bazli gelir ozeti
  • Gelir/gider/net kazanc grafigi
  • Mood/energy trendleri
  • Yaklasan deadline ve odeme listeleri

Kabul kriteri:

  • Dashboard tamamen gercek veriden beslenir.
  • Her MVP modulu en az bir anlamli rapor/grafik sunar.
  • Tarih filtresi: bugun, bu hafta, bu ay.

Faz 4: Basit AI Chatbot

Amac: Kullanici kendi freelancer verileri hakkinda soru sorabilsin.

Isler:

  • Chat UI'i stabil hale getirmek.
  • Provider secimi: Ollama, OpenAI, Gemini, Groq.
  • Son 7/30 gun verilerinden context builder yazmak.
  • Chat mesajlarini kaydetmek.
  • AI cevaplarini "danisma/asistan" sinirinda tutmak.

Kabul kriteri:

  • Kullanici kayitli verileri hakkinda soru sorabilir.
  • Chatbot en az gorev, proje, musteri, finans ve daily log ozetlerini context olarak kullanir.
  • AI calismasa bile uygulamanin temel modulleri calismaya devam eder.

Faz 5: Self-host Hazirligi

Amac: Projeyi acik kaynak ve self-host edilebilir hale getirmek.

Isler:

  • .env.example hazirlamak.
  • Kurulum dokumani yazmak.
  • Migration calistirma adimlarini belgelemek.
  • Docker Compose opsiyonunu degerlendirmek.
  • Demo kullanici/demo data akisi eklemek.

Kabul kriteri:

  • Yeni bir gelistirici dokumana bakarak projeyi ayaga kaldirabilir.
  • Harici AI servisleri opsiyonel kalir.
  • Local Ollama ile temel AI deneyimi mumkundur.

MVP Sonrasi Fazlar

Faz 6: Freelancer Business OS

  • Teklifler
  • Sozlesmeler
  • Fatura olusturma
  • Odeme takip otomasyonlari
  • Vergi/kar tahmini
  • Abonelik ve masraf yonetimi

Faz 7: Gelismis CRM

  • Lead pipeline
  • Musteri aktiviteleri
  • Follow-up hatirlatmalari
  • Musteri degeri ve risk raporlari

Faz 8: Gelismis AI

  • Embedding tabanli RAG
  • Modul ici AI onerileri
  • Akilli onceliklendirme
  • Finansal yorumlama
  • Takvim optimizasyonu
  • Proje risk tahmini

Faz 9: Mobil ve Sync

  • Mobil uygulama
  • Offline cache
  • Push notification
  • Takvim ve gorev sync
  • Local-first deneyim iyilestirmeleri

MVP Basari Kriterleri

MVP basarili sayilirsa:

  • Freelancer gunluk islerini, musterilerini, projelerini, side project'lerini ve temel finansini tek yerde takip edebilir.
  • Dashboard gercek verilerle anlamli haftalik/aylik raporlar sunar.
  • Kullanici uygulamayi self-host edebilir.
  • AI chatbot opsiyonel ama kullanisli bir danisma katmani olarak calisir.
  • Uygulama tek kullanici icin guvenilir ve build edilebilir durumdadir.