Doğal, samimi Türkçe sohbet eden yapay zekâ asistanı uygulaması (Expo / React Native).
Groq'un llama-3.3-70b-versatile modelini Vercel serverless proxy üzerinden kullanır; böylece API anahtarı istemcide tutulmaz, APK'nın içine gömülmez. İsteğe bağlı olarak kendi Groq/OpenRouter anahtarınla doğrudan da çalışır.
- Türkçe, doğal ve kısa mesajlarla sohbet (varsayılan model:
llama-3.3-70b-versatile) - API anahtarını gizleyen Vercel serverless proxy — uygulama anahtarsız çalışır
- Sohbet geçmişi (AsyncStorage ile kalıcı), yeni sohbet oluşturma ve silme
- Ayarlar ekranı: sunucu adresi, model ve isteğe bağlı API anahtarı
- API anahtarı SecureStore ile güvenli saklanır (anahtar girilirse)
- Karanlık tema
[Expo / React Native] --POST /api/chat--> [Vercel Serverless] --Bearer GROQ_API_KEY--> [Groq API]
İstemci doğrudan Groq'a bağlanmaz; anahtar yalnızca Vercel sunucusunda GROQ_API_KEY ortam değişkeninde durur.
.
├── App.tsx # Kök bileşen, ekran ve durum yönetimi
├── src/
│ ├── api.ts # Mesaj gönderimi (proxy / direkt mod), sağlayıcı tespiti
│ ├── storage.ts # Ayarlar ve geçmiş saklama (SecureStore + AsyncStorage)
│ ├── theme.ts # Renk paleti ve boşluklar
│ ├── types.ts # Ortak TypeScript tipleri
│ ├── components/MessageBubble.tsx
│ └── screens/ # ChatScreen, HistoryScreen, SettingsScreen
├── server/
│ ├── api/chat.js # Vercel serverless Groq proxy
│ └── package.json
└── plugins/
└── withAndroidLabel.js # Android launcher etiketini "BENAİ" yapan config plugin
npm install
npx expo startUygulama varsayılan olarak deploy edilmiş proxy sunucusunu kullanır (src/storage.ts içindeki DEFAULT_PROXY_URL). Ayarlar ekranından sunucu adresi değiştirilebilir. Anahtar gerekmez; ancak kendi Groq (gsk_...) veya OpenRouter (sk-or-v1...) anahtarını girersen direkt moda geçer.
server/ klasörünü Vercel'e deploy edin ve ortam değişkeni olarak GROQ_API_KEY tanımlayın.
cd server
vercel --prod- Uç nokta:
POST /api/chat - İstek gövdesi:
{ "model": "llama-3.3-70b-versatile", "messages": [...] } - Yanıt: OpenAI uyumlu
choices[0].message.content
npx eas-cli login
npx eas-cli build -p android --profile previewNotlar:
- Bu makinede git kurulu değilse
EAS_NO_VCS=1ortam değişkeniyle çalıştırın. eas initprojeyi EAS'e bağlar (app.json→extra.eas.projectId).- APK, build ekranındaki "Artifacts" bölümünden indirilir.
MIT — LICENSE