Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ברייט - אנגלית בעברית 📚

אפליקציית מובייל ללימוד אנגלית בעברית, בסגנון Bright. עובדת אופליין מלא, עם 800+ מילים, ביטויים, משחקים, מבחן התאמה, ומעקב התקדמות חכם.

React Native Expo SDK TypeScript


✨ תכונות מלאות

🎯 מבחן התאמה אוטומטי

בעת פתיחה ראשונה - 23 שאלות מדורגות (A1→C2). האלגוריתם מזהה את הרמה המתאימה לפי ביצועים.

📖 לימוד יעיל

  • 800+ מילים מסווגות לפי רמת CEFR (A1, A2, B1, B2, C1, C2) ולפי 27 קטגוריות
  • 120+ ביטויים לשיחות יומיומיות (מסעדה, נסיעות, עבודה, ניבים...)
  • שיעור יומי של 5 מילים חדשות + תרגול

🃏 כרטיסיות חכמות

אלגוריתם SM-2 Spaced Repetition - כל מילה חוזרת בדיוק כשעומדים לשכוח אותה. אנימציית הפיכה, השמעה, דוגמאות שימוש.

🎮 5 סוגי משחקים

משחק תיאור
🔗 התאמות התאם זוגות מילים עברית-אנגלית
תרגום מהיר כמה תרגומים תספיק ב-60 שניות?
✏️ איות הרכב מילה מאותיות מעורבבות
🎧 הקשבה שמע וכתוב את המילה
📝 בניית משפטים סדר מילים למשפט תקין

🎤 תרגול הגייה

  • השמעה רגילה ואיטית (TTS)
  • הקלטת המבטא שלך והשמעה לבדיקה

🏆 מערכת מוטיבציה

  • רצף יומי (Streak) - אוטומטי
  • XP ורמות - על כל פעולה
  • 9 הישגים לפתוח (10 שיעורים, רצף 30 ימים, 1000 XP...)
  • אתגר יומי - 10 שאלות מעורבות ייחודיות לכל יום

🌐 100% אופליין

הכל נשמר ב-AsyncStorage. אין צורך באינטרנט אחרי ההתקנה.

🇮🇱 ממשק עברית מלא

RTL, תרגום מלא, אייקונים אינטואיטיביים.


🛠️ ארכיטקטורה

english-bright/
├── App.tsx                    # נקודת כניסה + Navigation (Tabs + Stack)
├── app.json                   # תצורת Expo (RTL, plugins)
├── src/
│   ├── components/            # רכיבי UI משותפים
│   │   ├── Button.tsx        # כפתור עם variants (primary, outline, danger...)
│   │   ├── Card.tsx          # כרטיס מוצל
│   │   └── ProgressBar.tsx   # סרגל התקדמות
│   │
│   ├── data/                  # מאגרי נתונים סטטיים
│   │   ├── words.ts          # 800+ מילים עם תרגום + הגייה + דוגמאות
│   │   ├── phrases.ts        # 120+ ביטויים שימושיים
│   │   └── placementTest.ts  # שאלות מבחן ההתאמה
│   │
│   ├── db/
│   │   └── storage.ts        # AsyncStorage wrapper - users, streak, SRS, stats
│   │
│   ├── screens/               # מסכי האפליקציה
│   │   ├── PlacementTestScreen.tsx     # מבחן התאמה (intro→test→result)
│   │   ├── HomeScreen.tsx              # מסך בית עם פעולות מהירות
│   │   ├── LessonScreen.tsx            # שיעור (intro→study→quiz→done)
│   │   ├── FlashcardsScreen.tsx        # כרטיסיות עם SRS
│   │   ├── GamesScreen.tsx             # תפריט משחקים
│   │   ├── PronunciationScreen.tsx     # תרגול הגייה (TTS + recording)
│   │   ├── ProfileScreen.tsx           # פרופיל + סטטיסטיקות + הישגים
│   │   ├── CategoriesScreen.tsx        # בחירת נושא
│   │   ├── PhrasesScreen.tsx           # ביטויים שימושיים
│   │   ├── DailyChallengeScreen.tsx    # אתגר יומי מעורב
│   │   └── games/
│   │       ├── MatchingGame.tsx
│   │       ├── QuickGame.tsx
│   │       ├── SpellingGame.tsx
│   │       ├── ListenGame.tsx
│   │       └── SentenceGame.tsx
│   │
│   ├── theme/
│   │   └── colors.ts         # פלטה (primary, success, danger, levels...)
│   │
│   └── utils/
│       └── srs.ts            # אלגוריתם SM-2 Spaced Repetition

🚀 התקנה והפעלה

דרישות מקדימות

  • Node.js 18+
  • אפליקציית Expo Go בטלפון (Android / iOS)

הפעלה

git clone https://github.com/bot-sync-up/english-bright.git
cd english-bright
npm install
npm start

סרוק את ה-QR שיופיע במסך עם Expo Go.

בדיקה במחשב (ללא טלפון)

npm run web

⚠️ הקלטה (תרגול הגייה) דורשת מכשיר אמיתי.

בנייה ל-APK / IPA

npm install -g eas-cli
eas build --platform android --profile preview

📊 איך זה עובד פנימית

Spaced Repetition (SM-2)

כל מילה נשמרת עם:

  • ease - קלות הזכירה (התחלה: 2.5)
  • interval - כמה ימים עד החזרה הבאה
  • repetitions - מספר חזרות מוצלחות
  • nextReview - timestamp של החזרה הבאה

לוגיקה:

  • "קל" → ease עולה, interval מוכפל ב-ease
  • "בינוני" → תקין
  • "קשה" → repetitions=0, interval=1 (חוזרים מחר)

מבחן ההתאמה

האלגוריתם בודק לכל רמה (A1-C2) את אחוז התשובות הנכונות. הרמה הגבוהה ביותר עם 60%+ הצלחה - היא הרמה המוקצית.

אתגר יומי

Seeded shuffle לפי תאריך → אותן 10 שאלות לכל המשתמשים באותו יום, אבל שונות בכל יום.


🎨 התאמה אישית

ערוך את src/theme/colors.ts לשינוי פלטת הצבעים. הוסף מילים ב-src/data/words.ts (פונקציית עזר w() מקלה על כך).


🤝 תרומה

Pull requests ברוכים. לבעיות פתח issue ב-GitHub.

📝 רישיון

MIT - חופשי לשימוש אישי ומסחרי.


🤖 נבנה עם Claude Code על ידי Anthropic

About

Hebrew-to-English learning app (React Native + Expo) - inspired by Bright

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages