מערכת PWA מתקדמת לשאילת נתונים בשפה טבעית באמצעות בינה מלאכותית של Claude.
- 🗣️ שאלות בעברית - שאל שאלות טבעיות על הנתונים שלך
- 📊 תמיכה ב-CSV - העלאה קלה עם זיהוי אוטומטי של מבנה הנתונים
- 🤖 בחירת מנוע AI - תמיכה ב-Claude 4 או ChatGPT (OpenAI) לבחירתך
- 📱 PWA מלא - התקנה על המובייל, עבודה offline
- 🎨 ממשק בעברית - עיצוב נקי ונגיש
- Node.js 16+
- npm או yarn
- Claude API Key (מ-Anthropic Console)
- שכפול והתקנה
git clone [repository-url]
cd smart-query-ai
npm install- הגדרת Environment
# העתק את .env.example ל-.env
cp .env.example .env
# ערוך את .env והוסף את המפתחות שלך
CLAUDE_API_KEY=your_claude_api_key_here
REACT_APP_CLAUDE_API_KEY=your_claude_api_key_here
OPENAI_API_KEY=your_openai_api_key_here # <--- חדש לצ'אט GPT- הרצה
# פיתוח מלא (קליינט + שרת)
npm run full-dev
# או build ו-serve
npm run build-and-serve- גש לאפליקציה
- React Dev: http://localhost:3000
- Production: http://localhost:3001
# בדיקת שרת
npm run server
# בדיקת API
npm run test-server
# health check
curl http://localhost:3001/api/health
# בדיקת ChatGPT (OpenAI)
curl -X POST http://localhost:3001/api/openai/messages -H "Content-Type: application/json" -H "x-api-key: $OPENAI_API_KEY" -d '{"model":"gpt-4o","messages":[{"role":"user","content":"שלום, מה שלומך?"}]}'לבדיקה מפורטת: ראה TESTING.md
גרור או בחר קובץ CSV עם הנתונים שלך
"איזה פרויקטים פעילים כרגע?"
"כמה פרויקטים חורגים בתקציב?"
"מי מנהל את הפרויקט הכי יקר?"
"תראה לי גרף של תקציבים לפי סטטוס"
המערכת מחזירה:
- ✅ הסבר מה נמצא
- 📊 טבלת תוצאות
- 🎯 סיכום ברור
┌─────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐
│ User Input │───►│ React Client │───►│ Express Server │───►│ Claude API │
│ (CSV + Q&A) │ │ (localhost:3000)│ │ (localhost:3001)│ │ (Anthropic) │
└─────────────┘ └─────────────────┘ └─────────────────┘ └─────────────┘
▲ ▲
│ │
┌─────────────────┐ ┌─────────────────┐
│ Schema Manager │ │ Data Executor │
│ (Auto Analysis) │ │ (Smart Filter) │
└─────────────────┘ └─────────────────┘
- React Client - ממשק משתמש, העלאת קבצים, צ'אט
- Express Server - פרוקסי ל-Claude API, error handling
- ChatGPT (OpenAI) - עיבוד שאלות טבעיות (ברירת מחדל חדשה)
- Schema Manager - זיהוי אוטומטי של מבנה CSV
- Data Executor - ביצוע שאילתות וחישובים
- React 19 + TypeScript
- Tailwind CSS לעיצוב
- Papa Parse לעיבוד CSV
- Recharts לגרפים
- Express.js proxy server
- CORS support
- dotenv למשתני סביבה
- Claude 4 Sonnet (Anthropic)
- Smart prompting לניתוח נתונים
smart-query-ai/
├── public/
│ ├── manifest.json # PWA config
│ ├── sw.js # Service Worker
│ └── sample-projects.csv # דוגמת נתונים
├── src/
│ ├── components/
│ │ ├── ChatInterface.tsx # צ'אט עיקרי
│ │ └── SchemaSetup.tsx # העלאת קבצים
│ ├── services/
│ │ ├── aiProcessor.ts # Claude API client
│ │ ├── dataExecutor.ts # ביצוע שאילתות
│ │ └── schemaManager.ts # ניהול סכימה
│ └── types/
│ └── index.ts # הגדרות TypeScript
├── server.js # Express proxy server
├── test-server.js # בדיקות שרת
└── TESTING.md # מדריך בדיקה
- ✅ API Keys מוגנים בשרת
- ✅ CORS מוגדר נכון
- ✅ בחירת מנוע AI מהצ'אט (Claude או ChatGPT)
- ✅ Error handling מקיף
- ✅ Input validation לקבצים
-
"API key required"
- בדוק
.envfile - הפעל מחדש את השרת
- בדוק
-
"Port already in use"
lsof -i :3001 kill -9 [PID] -
Claude API errors
- בדוק יתרת חשבון ב-Anthropic
- בדוק תקינות המפתח
למידע מלא: TESTING.md
- תמיכה ב-JSON ו-API endpoints
- ויזואליזציות מתקדמות (גרפים)
- שמירת היסטוריית שיחות
- ייצוא תוצאות
- Speech-to-Text (קלט קולי)
- Text-to-Speech (תשובות קוליות)
- תמיכה במסדי נתונים
- שיתוף ושיתוף פעולה
MIT License - ראה LICENSE
תרומות מתקבלות בברכה! אנא פתח Issue או Pull Request.
לשאלות או תמיכה, פתח Issue בפרויקט.
Built with ❤️ and Claude AI