# Sistem Prompt - Note.Apper Projesi

## Proje Tanımı
Note.Apper, Laravel, Jetstream, Livewire, AlpineJS ve Tailwind CSS kullanılarak geliştirilmiş bir not alma uygulamasıdır.
Uygulama, kullanıcıların notlarını düzenleyebilmeleri, kategorilere ayırmaları, renklerle işaretlemeleri ve diğer kullanıcılar ile paylaşmaları için tasarlanmıştır.

## Teknoloji Yığını (TALL Stack)
- Laravel 10.x
- Livewire
- Jetstream (Teams desteği ile)
- AlpineJS
- Tailwind CSS
- Vite (Frontend build aracı)
- MySQL (varsayılan veritabanı)

## Proje Yapısı
- app/Http/Controllers/: Not, Kategori, Renk, Link gibi verilerle ilgili kontroller
- app/Livewire/NoteForm.php: Not formu için Livewire bileşeni
- app/Models/: Not, Kategori, Renk, Link gibi modeller
- resources/views/: Blade şablon dosyaları
- resources/views/livewire/: Livewire şablonları
- resources/views/sideovers/: Sidebar bileşenleri

## Kodlama Standartları
- Laravel'in standartları ve en iyi uygulamalarına uyulmalı
- PHP 8.1+ uyumlu kod yazılmalı
- PSR-12 kodlama standardı uygulanmalı
- Clean code prensipleri dikkate alınmalı
- Modüler yapılar oluştururum, kod tekrarını önlerim
- Performans optimizasyonlarına dikkat ederim
- Güvenlik en büyük önceliklerimdendir
- Type hinting ve return types kullanırım
- Documentation ve comments ile kodu açıklarım

## Geliştirme Talimatları
- Yeni özellikler eklenecekse, mevcut mimariye uygun olmalı
- Kullanıcı dostu arayüzler öncelikli olmalı
- Responsive tasarım önemsenmeli
- Security best practices dikkate alınmalı
- CRUD operasyonları için RESTful API endpoint'leri kullanılmalı

## Dikkat Edilmesi Gerekenler
- Jetstream kimlik doğrulama sistemi mevcut
- Team (takım) bazlı not yönetimi yapılmakta
- Notlara kategori ve renk eklenebiliyor
- Sidebar (sideovers) bileşenleri ile kullanıcı etkileşimi sağlanıyor
- Proje aynı veritabanını ve user-team sistemini kullanan birden fazla uygulamadan oluşuyor

## Veritabanı Yapısı

### Notes Tablosu
- id: Anahtar
- user_id: Notun sahibi (foreign key to users.id)
- company_id: Şirket (foreign key to companies.id)
- category_id: Kategori (foreign key to categories.id)
- color_id: Renk (foreign key to colors.id)
- title: Başlık
- content: İçerik
- archived_at: Arşivlenme tarihi
- created_at: Oluşturulma tarihi
- updated_at: Güncelleme tarihi

### Companies Tablosu
- id: Anahtar
- name: Şirket adı

### Users Tablosu
- id: Anahtar
- name: Kullanıcı adı

### Colors Tablosu
- id: Anahtar
- code: Renk kodu (hexadecimal)
- name: Renk adı
- created_at: Oluşturulma tarihi
- updated_at: Güncelleme tarihi

### Categories Tablosu
- id: Anahtar
- name: Kategori adı
- color_id: İlişkili renk (foreign key to colors.id)
- created_at: Oluşturulma tarihi
- updated_at: Güncelleme tarihi

### Labels Tablosu
- id: Anahtar
- name: Etiket adı
- color_id: İlişkili renk (foreign key to colors.id)
- created_at: Oluşturulma tarihi
- updated_at: Güncelleme tarihi
