MemoDokümantasyon
TR

Hızlı Başlangıç Rehberi

Memo'yu kaynak koddan bir dakikadan kısa sürede çalıştırın. Bu rehber bir geliştirme kurulumunu varsayar — son kullanıcı kurulumu için Kurulum Rehberi sayfasına bakın.

Ön Gereksinimler

Gereksinim Minimum Sürüm Kontrol Komutu
Go 1.26+ go version
Flutter 3.10+ flutter --version
GCC / build-essential Güncel gcc --version
Git Güncel git --version


SQLite ve sqlite-vec CGO gerektirir. Tüm Go komutlarından önce CGO_ENABLED=1 ayarlayın. Linux'ta build-essential (Debian/Ubuntu) veya base-devel (Arch) kurun. macOS'te Xcode Command Line Tools kurun. Windows'ta MSYS2 veya MinGW kullanın.

Klonlama ve Çalıştırma

git clone https://github.com/BugraAkdemir/memo.git
cd memo

İki Terminalli Kurulum

Terminal 1 — Arka Uç:

go run . --port 8090

Go arka ucu localhost:8090 adresinde başlar. REST API, SSE akış uç noktalarını sunar ve llama.cpp, hafıza, sağlayıcılar ve tüm arka uç hizmetlerini yönetir.

Terminal 2 — Ön Uç:

cd frontend
flutter run -d linux

Platformunuza bağlı olarak linux yerine windows, macos veya chrome kullanın. Flutter masaüstü uygulaması arka uca HTTP/SSE üzerinden bağlanır.


8090 portu kullanımdaysa --port 8080 (veya başka bir port) ile çalıştırın. Flutter istemcisinin MemoApiClient temel URL'sini eşleşecek şekilde güncelleyin.

Derleme (Sürüm)

Arka Uç

cd memo
CGO_ENABLED=1 go build -o memo .

Ön Uç

cd memo/frontend
flutter build linux --release

Derlenen ikili dosya frontend/build/linux/x64/release/bundle/ dizininde bulunur.

Paketleme Betiği

Depo, platform paketleri üreten build_releases.sh betiğini içerir:

./build_releases.sh

Bu, dist/ dizininde .AppImage, .deb, .tar.gz (Linux), .zip (macOS) ve .exe (Windows) dosyaları oluşturur.

Çalıştığını Doğrulama

  1. Arka uç Listening on :8090 yazdırmalı
  2. Ön uç Memo karşılama ekranını göstermeli
  3. Bir sohbet açın ve mesaj gönderin — eğer model yapılandırılmamışsa önce Model Mağazasını ziyaret edin

İlk Çalıştırmadan Sonra Dizin Yapısı

memo/
├── main.go                # Giriş noktası
├── go.mod
├── internal/              # 29 Go paketi
│   ├── app/               # Merkezi orkestratör
│   ├── webserver/         # REST API + SSE
│   ├── memory/            # RAG vektör deposu
│   ├── provider/          # LLM sağlayıcı yönlendirme
│   ├── agent/             # Araç çağırma korumalı alanı
│   ├── orchestra/         # Çoklu-model iş akışları
│   ├── cloudsync/         # Google Drive uçtan uca yedekleme
│   ├── whatsapp/          # WhatsApp köprüsü
│   ├── calendar/          # Etkinlik deposu + hatırlatıcılar
│   ├── identity/          # Sistem prompt / kişilik
│   └── ...
├── frontend/              # Flutter masaüstü + mobil
│   ├── lib/main.dart
│   ├── lib/providers/     # Riverpod durumu
│   ├── lib/widgets/       # Arayüz bileşenleri
│   └── lib/core/          # API istemcisi, temalar
├── config/config.yaml      # Varsayılan yapılandırma
├── data/                   # SQLite veritabanları, oturumlar, modeller
└── build_releases.sh       # Paketleme betiği

Sonraki Adımlar