Skip to content

turtir-ai/text-to-trello

Repository files navigation

📋 Text to Trello AI

Trello Gemini Node.js Vercel

🚀 Metinlerinizi Otomatik Olarak Trello Görevlerine Dönüştürün!

Gemini AI destekli akıllı görev yönetimi sistemi

🌟 Özellikler

  • AI Destekli Metin İşleme: Gemini AI ile düz metni otomatik olarak yapılandırılmış görevlere dönüştürür
  • 📝 Doğal Dil İşleme: Türkçe komutları anlayıp Trello kartları oluşturur
  • 🎯 Akıllı Önceliklendirme: Görevlere otomatik öncelik ataması
  • 👥 Otomatik Atama: Ekip üyelerine görev atama
  • 🏷️ Etiketleme: Görevlere otomatik etiket ekleme
  • 📱 Responsive Arayüz: Her cihazda mükemmel çalışır
  • 🔒 Güvenli: API anahtarları tarayıcıda güvenli şekilde saklanır

🎥 Demo

🔗 Canlı Demo

🚀 Hızlı Başlangıç

1️⃣ Trello API Anahtarlarını Alın

  1. Trello Power-Ups Admin sayfasına gidin
  2. "New" butonuna tıklayın ve bir Power-Up oluşturun
  3. API Key'inizi kopyalayın
  4. Token almak için aşağıdaki URL'yi kullanın (API_KEY yerine kendi anahtarınızı koyun):
    https://trello.com/1/authorize?expiration=never&name=Text-to-Trello&scope=read,write&response_type=token&key=API_KEY
    

2️⃣ Trello Board ID'sini Bulun

  1. Trello panonuzu açın
  2. URL'nin sonuna .json ekleyin
  3. Açılan JSON'da "id" değerini kopyalayın

3️⃣ Gemini AI API Key (Opsiyonel)

  1. Google AI Studio sayfasına gidin
  2. Google hesabınızla giriş yapın
  3. "Create API Key" butonuna tıklayın
  4. API anahtarınızı kopyalayın

💻 Kurulum

Vercel ile Deploy (Önerilen)

Deploy with Vercel

Lokal Kurulum

# Projeyi klonlayın
git clone https://github.com/turtir-ai/text-to-trello.git
cd text-to-trello

# Bağımlılıkları yükleyin
npm install

# .env dosyasını oluşturun
cp .env.example .env

# .env dosyasını düzenleyin ve API anahtarlarınızı ekleyin

# Uygulamayı başlatın
npm start

Tarayıcınızda http://localhost:3000 (veya MCP_SERVER_PORT) adresine gidin.

📖 Kullanım

Web Arayüzü

  1. API anahtarlarınızı üst panelden girin
  2. Görevlerinizi metin kutusuna yazın veya yapıştırın
  3. "Görevleri Oluştur" butonuna tıklayın
  4. Görevler otomatik olarak Trello panonuza eklenecek!

Görev Formatları

Yapılandırılmış Format:

GÖREV: Web sitesi tasarımı kritik
  Modern ve responsive tasarım hazırlanacak
  - Ana sayfa tasarımı
  - Ürün sayfası şablonu

ARAŞTIRMA: Pazar analizi
  Rakip firmalar incelenecek
  - Fiyat karşılaştırması
  - Özellik analizi

PROJE: Mobil uygulama geliştirme
  React Native ile cross-platform uygulama

Düz Metin (Gemini AI ile):

yeni web sitesi tasarımı yapılacak
mobil uygulama için api geliştirme
veritabanı optimizasyonu gerekiyor
müşteri toplantısı ayarla yarın için

CLI Kullanımı

# Metin dosyasından görev oluşturma
npm run text-to-trello -- input.txt

# İnteraktif mod
npm run text-to-trello

🤖 Gemini AI Entegrasyonu

Gemini AI aktif olduğunda:

  • Düz metni otomatik olarak yapılandırır
  • Görevlere öncelik atar
  • Alt görevler oluşturur
  • Etiketler ekler
  • Atama önerileri yapar

🛠️ Teknolojiler

  • Backend: Node.js, Express.js
  • AI: Google Gemini AI
  • API: Trello REST API
  • Frontend: Vanilla JavaScript, HTML5, CSS3
  • Deployment: Vercel

📦 Proje Yapısı

text-to-trello/
├── public/              # Web arayüzü
│   └── index.html      # Ana sayfa
├── src/
│   ├── server.js       # Express sunucu
│   ├── text-to-trello.js   # Metin işleme
│   ├── trello-manager.js   # Trello API
│   ├── gemini-manager.js   # Gemini AI
│   └── command-processor.js # Komut işleme
├── .env.example        # Örnek yapılandırma
├── package.json        # Bağımlılıklar
└── README.md          # Dokümantasyon

🔧 Yapılandırma

.env dosyası örneği:

# Trello API
TRELLO_API_KEY=your_api_key_here
TRELLO_TOKEN=your_token_here
DEFAULT_BOARD_ID=your_board_id_here

# Gemini AI (Opsiyonel)
GEMINI_API_KEY=your_gemini_api_key_here
GEMINI_MODEL=gemini-1.5-flash

# Server
PORT=3001

📝 API Endpoints

POST /api/text-to-trello

Metni Trello görevlerine dönüştürür.

{
  "text": "GÖREV: Yeni özellik geliştirme",
  "config": {
    "apiKey": "...",
    "token": "...",
    "boardId": "...",
    "geminiKey": "..." // opsiyonel
  }
}

🤝 Katkıda Bulunma

  1. Projeyi fork edin
  2. Feature branch oluşturun (git checkout -b feature/amazing-feature)
  3. Değişikliklerinizi commit edin (git commit -m 'Add amazing feature')
  4. Branch'inizi push edin (git push origin feature/amazing-feature)
  5. Pull Request açın

📄 Lisans

Bu proje MIT lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasına bakın.

👨‍💻 Geliştirici

Turtir AI

🙏 Teşekkürler

📚 Dokümantasyon

Detaylı dokümantasyon için Wiki sayfasını ziyaret edin.

🐛 Hata Bildirimi

Hata bulduysanız lütfen Issues sayfasından bildirin.


⭐ Bu projeyi beğendiyseniz yıldız vermeyi unutmayın!

Made with ❤️ by Turtir AI


🧠 Yapılandırılmış Çıktı (Gemini)

Gemini ile görevleri artık şema kilitli JSON olarak da üretebilirsiniz. Sistem önce JSON'u tüketir; JSON gelmezse insan-okur <TRELLO_PLAN> metni üzerinden devam eder.

Örnek JSON (özet):

{
  "tasks": [
    {
      "title": "",
      "description": "",
      "checklist": ["", ""],
      "labels": ["yüksek", "görev"],
      "assignees": ["@ziyaeyuboglu"],
      "due": "2025-09-10",
      "listName": "Yapılacaklar"
    }
  ],
  "warnings": []
}

Notlar:

  • labels alanındaki öncelik enum: {kritik, yüksek, normal, düşük}
  • assignees kullanıcıları @handle biçiminde gelmelidir
  • due formatı: YYYY-MM-DD

🔔 Webhook Kurulumu

Sunucuya HEAD /webhooks/trello → 200 ve POST /webhooks/trello eklendi. Webhook kurmak için:

# .env içinde BASE_URL ayarla (örn. http://localhost:3000)
npm run webhook:create

Trello webhook oluştururken callbackURL'e HEAD atar; 200 dönmezse kurulmaz.

♻️ Dupe Guard ve Checklist

  • Kart oluştururken aynı listede aynı başlık + aynı gün due varsa yeni kart açılmaz; mevcut URL döner.
  • Checklist maddeleri Trello API kısıtları gereği tek tek POST edilerek eklenir.

About

Convert text to Trello tasks with AI-powered automation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published