first commit
This commit is contained in:
6180
docs/openapi.yaml
Normal file
6180
docs/openapi.yaml
Normal file
File diff suppressed because it is too large
Load Diff
62
docs/prd.md
Normal file
62
docs/prd.md
Normal file
@@ -0,0 +1,62 @@
|
||||
🚀 Ürün Gereksinim Dokümanı (PRD): AyrisMail Central
|
||||
1. Ürün Özeti
|
||||
AyrisMail Central, Mailcow API’sini kullanarak birden fazla domaini ve bu domainlere bağlı mail hesaplarını yönetmeye yarayan, Next.js tabanlı bir "Multi-Tenant" (Çoklu Kiracılı) yönetim panelidir. Kullanıcılar, teknik bilgiye ihtiyaç duymadan kendi domainleri altında mail hesabı açıp kapatabilirler.
|
||||
|
||||
2. Kullanıcı Rolleri ve Yetkiler
|
||||
Süper Admin (Mustafa): * Tüm domainleri ekler/siler.
|
||||
|
||||
Domain Admin’leri oluşturur.
|
||||
|
||||
Sunucu genel kotasını ve API anahtarlarını yönetir.
|
||||
|
||||
Domain Admin (Örn: Emina Hanım):
|
||||
|
||||
Sadece kendisine atanmış olan domaini (örn: aveminakarabudak.com) görür.
|
||||
|
||||
Yeni mail kutusu oluşturabilir, mevcut olanları silebilir.
|
||||
|
||||
Kullanıcıların şifrelerini sıfırlayabilir ve kotalarını güncelleyebilir.
|
||||
|
||||
3. Temel Özellikler (MVP)
|
||||
A. Dashboard & Auth
|
||||
|
||||
Güvenli Giriş: NextAuth.js ile e-posta ve şifre tabanlı giriş sistemi.
|
||||
|
||||
Hızlı Özet: Aktif mail kutusu sayısı, kullanılan toplam disk alanı ve domain sağlık durumu (SPF/DKIM/MX) göstergeleri.
|
||||
|
||||
B. Domain Yönetimi (Süper Admin)
|
||||
|
||||
Domain Listesi: Tüm kayıtlı domainlerin tablosu.
|
||||
|
||||
Domain Atama: Hangi domainin hangi kullanıcı tarafından yönetileceğinin belirlenmesi.
|
||||
|
||||
C. Mail Hesabı Yönetimi (Domain Admin)
|
||||
|
||||
Hesap Oluşturma Formu: * local_part (isim), name (Ad Soyad), password ve quota (MB) girişleri.
|
||||
|
||||
Hesap Listeleme: Mevcut mail hesaplarının (örn: info@domain.com) tablo halinde gösterimi.
|
||||
|
||||
Hızlı İşlemler: Tek tıkla şifre güncelleme veya hesabı pasife alma.
|
||||
|
||||
4. Teknik Altyapı (Tech Stack)
|
||||
Framework: Next.js 14+ (App Router)
|
||||
|
||||
Stil: Tailwind CSS + Shadcn/UI (Karanlık Mod desteği dahil)
|
||||
|
||||
State Management: TanStack Query (API verilerini anlık çekmek için)
|
||||
|
||||
API Entegrasyonu: Mailcow API (Server-side fetch işlemleri)
|
||||
|
||||
Veritabanı (Küçük bir DB): Kullanıcı rolleri ve domain atamalarını tutmak için (Supabase veya Prisma/Postgres).
|
||||
|
||||
5. UI/UX Tasarım Konsepti
|
||||
Temiz Arayüz: Mailcow’un binlerce ayarı yerine sadece "Mail Ekle", "Şifre Değiştir", "Sil" butonlarının olduğu minimalist bir tasarım.
|
||||
|
||||
White-Label: Giriş ekranında AyrisTech logosu, içeride ise ilgili domainin başlığı.
|
||||
|
||||
Mobil Uyum: Telefon üzerinden kolayca yeni mail açabilme yeteneği.
|
||||
|
||||
6. Başarı Kriterleri
|
||||
Bir domain admininin sisteme girip yeni bir mail hesabı oluşturma süresinin 15 saniyenin altında olması.
|
||||
|
||||
Süper adminin sunucu terminaline veya ana Mailcow paneline girmeden tüm günlük işlerini Next.js üzerinden yapabilmesi.
|
||||
49
docs/prd2.md
Normal file
49
docs/prd2.md
Normal file
@@ -0,0 +1,49 @@
|
||||
📧 Ürün Gereksinim Dokümanı (PRD): AyrisMail Web Client Modülü
|
||||
1. Ürün Özeti
|
||||
AyrisMail Web Client, AyrisMail Central ekosisteminin içine entegre edilmiş, modern, hızlı ve minimalist bir e-posta okuma/yazma modülüdür. Kullanıcıların Mailcow sunucusu üzerindeki e-postalarına IMAP/SMTP protokolleri üzerinden tarayıcı tabanlı erişimini sağlar.
|
||||
|
||||
2. Kullanıcı Deneyimi (UX) Hedefleri
|
||||
Gmail Tarzı Akış: Hızlı geçişler, klavye kısayolları ve temiz bir okuma alanı.
|
||||
|
||||
Zero-Refresh: Next.js ve TanStack Query kullanarak sayfa yenilenmeden mail okuma ve klasörler arası geçiş.
|
||||
|
||||
Responsive: Masaüstünde üç sütunlu (Klasörler - Liste - Detay), mobilde ise liste odaklı tasarım.
|
||||
|
||||
3. Temel Özellikler (MVP)
|
||||
A. Gelen Kutusu ve Klasör Yönetimi
|
||||
|
||||
Liste Görünümü: Okunmamış maillerin kalın fontla vurgulandığı, gönderen adı, konu ve tarihin görüldüğü liste alanı.
|
||||
|
||||
Klasör Desteği: Gelen Kutusu (Inbox), Taslaklar (Drafts), Gönderilenler (Sent), Çöp Kutusu (Trash) ve Arşiv arasında geçiş.
|
||||
|
||||
Arama: Gönderen adına veya konu başlığına göre hızlı filtreleme.
|
||||
|
||||
B. Okuma ve Yanıtlama
|
||||
|
||||
Rich Text Okuma: HTML formatındaki maillerin güvenli bir şekilde (XSS korumalı) görüntülenmesi.
|
||||
|
||||
Ekleri Görüntüleme: Gelen eklerin (PDF, Görsel) tarayıcı içinde önizlenmesi veya indirilmesi.
|
||||
|
||||
Yanıtla/İlet: Mailleri yanıtlama veya başkasına iletme fonksiyonları.
|
||||
|
||||
C. Mail Yazma (Compose)
|
||||
|
||||
Zengin Metin Editörü: Bold, Italic, Liste gibi temel formatlama özelliklerine sahip editör.
|
||||
|
||||
Dosya Eki: Drag-and-drop (sürükle-bırak) yöntemiyle dosya ekleme.
|
||||
|
||||
4. Teknik Mimari ve Protokoller
|
||||
IMAP Entegrasyonu: Sunucu tarafında imapflow kütüphanesi ile mail içeriklerinin çekilmesi.
|
||||
|
||||
SMTP Entegrasyonu: nodemailer ile güvenli mail gönderimi.
|
||||
|
||||
Frontend UI: shadcn/ui'ın Mail component şablonu (Bu şablon doğrudan Gmail arayüzünü referans alır).
|
||||
|
||||
Güvenlik: Kullanıcı şifreleri veritabanında saklanmaz; oturum bazlı (session) olarak IMAP bağlantısı için kullanılır.
|
||||
|
||||
5. Yol Haritası (Gelecek Özellikler)
|
||||
Push Notifications: Yeni mail geldiğinde tarayıcı veya mobil bildirimi.
|
||||
|
||||
Otomatik İmza: Kullanıcı bazlı zengin metin imzalar.
|
||||
|
||||
Spam Yönetimi: Mailcow API ile entegre "Spam olarak işaretle" butonu.
|
||||
Reference in New Issue
Block a user