OpenAthlete
AGPLv3 endurance training platform: EU-oriented hosting, transparent CTL/ATL/TSB logic in code, self-hosting, and full export. Built in Grenoble.
כתבו בעברית מה האימון שאתם רוצים — TrainerHub בונה אותו במקום מהמאגר האמיתי, בלי שרת ובלי המתנה.
Translation pending
Sports & fitnessJavaScript · HTMLGitHub @Swissystem7OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
מהעדפות מתאמן לתוכנית אימון שבועית, עם שרת Python
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
דמו / פורטפוליו בעברית וב־RTL: בונה תוכנית אימון שבועית וממיר טקסט חופשי לכרטיסייה שאפשר להריץ במצב אימון. זה לא מוצר SaaS חי, אין מנויים ואין שרת בענן בדמו הציבורי. למי נבנה: מאמנים אישיים עצמאיים בישראל שרוצים תוכנית מותאמת (מטרה, רמה, ציוד, ימים) בלי אקסל. זה גם כלי תרגול למתאמן בודד. דמו חי על GitHub Pages · בנה אימון · ספריית הסרטונים · יומן ביצוע · הצעה למאמנים · דף אחד להדפסה · ניהול מאגר · טקסט לכרטיסייה · מצב אימון הדמו סטטי. פענוח AI ב־backend/main.py רץ רק אם מרימים localhost:8001 עם מפתח; ב־Pages הוא לא פעיל.Read the full README ↗
דמו / פורטפוליו בעברית וב־RTL: בונה תוכנית אימון שבועית וממיר טקסט חופשי לכרטיסייה שאפשר להריץ במצב אימון. זה לא מוצר SaaS חי, אין מנויים ואין שרת בענן בדמו הציבורי.
למי נבנה: מאמנים אישיים עצמאיים בישראל שרוצים תוכנית מותאמת (מטרה, רמה, ציוד, ימים) בלי אקסל. זה גם כלי תרגול למתאמן בודד.
דמו חי על GitHub Pages · בנה אימון · ספריית הסרטונים · יומן ביצוע · הצעה למאמנים · דף אחד להדפסה · ניהול מאגר · טקסט לכרטיסייה · מצב אימון
הדמו סטטי. פענוח AI ב־backend/main.py רץ רק אם מרימים localhost:8001 עם מפתח; ב־Pages הוא לא פעיל.
index.html + js/prompt-parser.js + js/session-builder.js): מטרה קצרה בעברית לצד שדות מפורשים לזמן, ציוד וכמות חניכים. פרסר מבוסס-כללים בדפדפן (בלי רשת ובלי מפתח) מחלץ גם נתונים שנכתבו בטקסט, בונה אימון מהמאגר ומחלק קבוצה לתחנות. אם אין מספיק סרטונים — נאמר במפורש ומוצע הקרוב ביותר. בלי הבטחות תוצאה.js/ingest.js): מדביקים טקסט («3 סבבים: 40 שניות פלאנק…») — מפורק לתרגילים ומותאם לסרטון במאגר, כולל שגיאות כתיב («סמיכה»=«שמיכה»). תרגיל בלי סרטון נשאר טקסט ונכנס לרשימת «סרטונים שכדאי לצלם». פירוק סרטון ארוך הוא סימון ידני של התחלה/סוף — אין זיהוי ראייה אוטומטי.js/analyzer.js): תרגיל בודד (שרירים, דפוס תנועה, סוג עומס, קושי) ואימון שלם (פילוח נפח, איזון דחיפה-משיכה, זמן/עצימות, גירוי, דגלי איכות).js/core.js + js/catalog.json + videos/drive-catalog.json): סכימת phases, esc, אחסון, wa.me, מנוע התוכנית, וקטלוג מאוחד עם שדה source (מקומי / דרייב / יוטיוב / קישור). כשהקטלוג טעון המנוע מעדיף קליפים אמיתיים על מאגר גנרי. חיפוש, תגיות (ילדים / זוגות / ספורט), חלופות, ולינק לקליפ בודד (#CLIP.) — בלי שם קובץ בכתובת. בדיקות: node --test (בלי תלויות) על המנוע, הקטלוג, הפרסר, המנתח, הספרייה, קוד הסיום ל־wa.me, וסכימת phases.library.html): 70 רשומות הותאמו ל־68 קובצי OneDrive אמיתיים ונארזו כווידאו H.264 ציבורי דרך GitHub Releases. שמונה רשומות ללא קובץ מסומנות כלא זמינות ואינן נבחרות לאימון. בלי רשת או במקרה שגיאה מוצגים פרטי התרגיל במקום נגן שבור. שמות קבצים לא מוצגים.manage.html): הדבקת קישור דרייב / מזהה / יוטיוב → הצעת שריר/ציוד/רמה → שמירה ב־localStorage וייצוא JSON. קישור חיצוני נשמר כקישור שנפתח בחוץ — לא חיבור למאמנים ולא חיפוש ביוטיוב.weekly.html): מטרה משנה סטים/חזרות/מנוחה (כוח 4×4–6 / 120 שנ׳, היפרטרופיה 3×8–12 / 60 שנ׳, סיבולת 3×12–15 / 45 שנ׳). ציוד כולל גומיות/קונוסים/כדור (מה שיש בספרייה), וקהל ילדים/ספורט. תרגיל עם קליפ מסומן; אפשר להחליף לחלופה מאותה ספרייה. התחל אימון פותח את מצב האימון עם אותה סכימת phases.frontend/): טקסט חופשי → כרטיסייה. אם השרת המקומי נכשל, רץ פענוח כללים בדפדפן (בלי AI). אין Marketplace ואין חשבון.<video>, דרייב/יוטיוב כ־iframe, ובלי רשת — טקסט התרגיל. החלף מציע חלופה מאותה קבוצת שרירים. לינק #CLIP. פותח תרגיל בודד מהספרייה.wa.me וקוד TH1 לייבוא.journal.html): ייבוא הקוד מהוואטסאפ, רשת 28 יום, בלי לקוחות מזויפים. הצע שבוע הבא משנה סטים לפי קושי/דילוגים. תזכורת בוואטסאפ למי שבלי ביצוע מיובא. זה כלי מקומי, לא CRM שנמכר.offer.html): מסלול תוכן בלבד ב־₪59 למושב מאמן — שיתוף אימון ללקוח ודף ממותג. אין סליקה באתר; קוד גישה אחרי תשלום מחוץ לאתר. בלי קוד, כפתור «שתף אימון ללקוח» חסום. בקשת קוד: טופס Google «משוב על האפליקציות» של הבעלים, עם TrainerHub ממולא מראש (מאז 28.9) — הערך האחד CONTACT ב־js/contact.js. אם מרוקנים אותו, הדף חוזר לטופס issue בעברית (ציבורי).pitch.html) וייצוא אימון ל־PDF (workout-print.html, הדפסה מהדפדפן). גרסת תרגול נושאת סימן מים; מיתוג המאמן רק אחרי קוד.booklet.html + js/booklet.js + content/booklet/): תוכן חוברות קורס המאמנים של עמותת אחריי (ספטמבר 2026) כנתונים מובנים — עקרונות האימון, 90 תרגילי חימום/מתיחות/גמישות, משחקי תופסת וכדור, שיטות לשטח מוגבל (טבטה, פירמידה, אני-אתה…), 5 אימוני פתיחה שנפתחים ישירות במצב אימון, מחשבון בוחן כושר לפי טבלאות החוברת (לא נשמר), דגשי בטיחות בחורף, חוקת כדור זוהר, ותבנית ריקה של תיק קבוצה (סקר שטח, טבלת סיכונים, תגובה לאירועים). כל פריט נושא קרדיט לקובץ המקור; בלי שמות או פרטים אישיים.js/site-profile.js + js/site-plan.js + js/site-scan.js + worker/site-scan/): פרופיל שטח (רוחב, משטח, מדרגות/ספסל/קיר/שיפוע, סכנות, צל) שממנו נבנה אימון מהחוברת — שיטה לשטח מוגבל כשצר, תרגילי מדרגות/ספסל/קיר כשזוהו, משחקי תופסת רק כששטח רחב, חלוקה לגלים/תחנות לפי גודל הקבוצה ושורת אזהרה לכל סכנה, עם שורת הסבר בעברית לכל בחירה. הזיהוי מהתמונות הוא רשות: בלי AI הכול עובד מהצ'קליסט הידני «מה יש בשטח?», וכל כשל (אין פרוקסי, אין מפתח, תשובה שבורה) מחזיר את המאמן לאותו צ'קליסט עם שורה בעברית. ה־AI, כשהוא מחובר, רץ מאחורי worker/site-scan/ (Cloudflare Worker, תוכנית חינם) או backend/main.py בפיתוח מקומי — מפתח Gemini לא נמצא במאגר ולא בדפדפן, והתמונות לא נשמרות. הפריסה והמפתח הם צעד של הבעלים: worker/site-scan/README.md. המסך עצמו הוא site-scan.html (כפתור «📷 סרוק את השטח» בדף הבית ובחוברת).js/pilot.js): ?pilot=acharai (או קוד גישה) מפעיל פילוט לעמותת אחריי — יכולות המאמן בלי תשלום, מיתוג «עמותת אחריי» בשיתוף ובהדפסה, והעדפת התרגילים שהחוברת מלמדת כשהמנוע בוחר מהקטלוג (THPilot.builderOpts(catalog) כפרמטר שלישי ל־buildSession). משוב בסוף אימון (אימון, שטח, דירוג, מה עבד ומה לשפר) נשמר במכשיר ויוצא כ־JSON או כהודעת וואטסאפ שהמאמן שולח בעצמו — בלי טלפונים, מיילים ופרטי מתאמנים. הכול ב־localStorage, בלי שרת. מאמן שכבר יש לו מיתוג משלו שומר אותו.
אין סליקה ואין וואטסאפ־שרת. קובצי הווידאו אינם נשמרים בהיסטוריית Git: גרסאות H.264 המותאמות לדפדפן מתפרסמות כנכסי release, והקטלוג שומר כתובות יציבות בלבד (ראו videos/README.md). backend/ אופציונלי ולא רץ ב־Pages. אין GitHub Actions. מחקר המחיר: MONETIZATION.md. מסמכי האקתון/תמחור ישנים ב־docs/archive/.פסק דין ל־CRM: PARK. ליתד תוכן (ספרייה + בונה + שיתוף, בלי CRM): נתיב כסף צר במחיר מוצע ₪59 — לא אומת בראיונות. פירוט ב־RESEARCH.md ו־MONETIZATION.md.
הועלה מהמחשב של אבירן — יולי 2026. תיקוני הדמו והמיצוב — אוגוסט 2026.