מיזם ארכיון דיגיטלי פתוח של כתבים חיצוניים, גנוזים ואפוקריפיים בעברית — שחזורים, תרגומים וביאורים של טקסטים שנדחקו אל שולי המסורת ועתה שבים אל שפת המוצא. החותם היווני ΛΟΓΙΑ ("אמרות") נשמר כסמל ההוצאה.
- אתר חי: https://logos-alex.github.io/Source/
- מסמכי הכוונה:
docs/PROJECT-MANIFEST.md
שלושה חיבורים פעילים בטקסט מלא, לצד 27 חיבורים נוספים הרשומים בקטלוג בהכנה:
| חיבור פעיל | מקור | היקף |
|---|---|---|
| חזון אברהם | סלאבית (שלושה נוסחים: א', ב', ג') | 17 פרקים לכל נוסח + נספחים, טבלת הקבלה ותצוגה מקבילה |
| מעשה יצחק | ערבית (BnF Arabe 5072) | 4 פרקים + הערות נוסח |
| שיחת משה (תשיעיתא דמשה גביא בנביאותא) | סורית | 6 פרקים + 2 נספחים, תצוגה מקבילה סורית־עברית |
| מדד | ערך |
|---|---|
| חיבורים רשומים בקטלוג | 30 |
| חיבורים פעילים בטקסט מלא | 3 |
| פרקי תוכן | 66 |
| מילים (בערך) | ~17,900 |
| שפות מקור בקטלוג | 8 |
| דמויות מקראיות בקטלוג | 9 (+ חטיבת תלמידי ישוע) |
| חיבורים עם תצוגה מקבילית | 9 |
| חיבורים בסטטוס "בקרוב" | 27 |
| שפה | מספר חיבורים | דוגמאות |
|---|---|---|
| aramaic | 11 | sichat-moshe, clementine-r1..r4, apoc-daniel-syriac |
| arabic | 7 | maase-yitzchak, ketav-almagal, chazon-daniel-aravi |
| greek | 4 | apokalypsis-esdras, maale-yeshayahu, sefer-hanoch-a |
| latin | 3 | chazon-ezra-sofer, maasei-timotheos, klalot-hashvatim |
| armenian | 2 | vision-daniel-armenian, vision-enoch-righteous-armenian |
| slavic | 1 | apocalypse-abraham (פעיל) |
| hebrew | 1 | sefer-zerubbabel |
| geez | 1 | clementos |
| סה"כ | 30 |
apoc-daniel-syriac, young-daniel-syriac, clementine-r1, clementine-r2, clementine-r3, clementine-r4, clementine-homilies, sichat-moshe, chazon-ezra-suri
- מנוע אתר: Eleventy 3.x (Nunjucks templates) — 16 בדיקות CI, כולן עוברות
- קטלוג:
src/_data/sources-catalog.jsonעם 29 חיבורים, 8 שפות, 8 דמויות, 9 עםparallelLayout: true - תבניות Nunjucks:
base.njk,text-page.njk,category-page.njk,content-page.njk,breadcrumbs.njk,disqus.njk,logo-mark.njk - עיצוב: CSS מלא עם CSS variables — RTL, מצב כהה/בהיר, מערכת מרחבית, z-index scale מסודר, תמיכה ב-
prefers-reduced-motion - פונטים: Self-hosted — Frank Ruhl Libre (300/400/700), Noto Serif Hebrew (300/400/700), EB Garamond (לוגו לטיני) — WOFF2 + TTF, עם
unicode-rangeלחלוקת טעינה - חיפוש: Pagefind (סטטי) — אינדקס נבנה אוטומטית ב-
npm run build - תגובות: Disqus (lazy-loaded, opt-in)
- דפי תוכן: about, license (CC0), privacy (GDPR), contact
- נכסי מותג: og-image, favicon (svg/ico/192/512), apple-touch-icon, manifest.json (PWA מלא)
- תכונות UX: header-search, footer-nav מעוצב, back-to-top, font-controls (A-/A/A+/A++), RSS feed, reading-progress bar, reading-mode, parallel-toggle
- CI:
npm run ci:verifyמריץ 16 בדיקות אימות (frontmatter, catalog, permalinks, built-links, placeholders, third-party-controls, ועוד) - יצירת פרקים:
npm run new:chapter -- <lang>/<book> <pageNumber> "<title>" <source> <figure> [version] - דוחות:
npm run report:content— דוח אוטומטי של מצב התוכן - מודולים משותפים:
scripts/_lib/(walk.mjs, frontmatter.mjs, catalog.mjs) — לשימוש בסקריפטים חדשים
27 חיבורים בקטלוג עדיין בסטטוס "בקרוב" ("החיבור בהכנה. הטקסט יתווסף בהמשך.") עם comingSoon: true.
כדי להפוך חיבור לפעיל יש ל:
- כתוב
index.mdעם מבוא מלא (300–600 מילה) - צור קבצי
page-1.md,page-2.md, … עם הפרקים - צור
main.jsonעם{"version": "main"} - שנה
comingSoon: falseב-index.md - הרץ
npm run ci:verify
npm run new:chapter -- <lang>/<book> <pageNumber> "<title>" <source> <figure> [version]
# Example:
npm run new:chapter -- aramaic/sichat-moshe 9 "פרק ט" aramaic moshe mainהסקריפט יוצר קובץ עם frontmatter תקין (layout, title, book, source, figure, pageNumber, version, permalink, tags).
- פתח את הקובץ הרלוונטי ב-
src/texts/<lang>/<book>/page-N.md - ערוך את הטקסט (markdown)
- הוסף הערות שוליים ב-frontmatter תחת
notes: - הרץ
npm run ci:verifyלפני commit - הרץ
npm run devלתצוגה מקומית
---
layout: text-page
title: "פרק א"
book: sichat-moshe
source: aramaic
figure: moshe
pageNumber: 1
version: main
permalink: /texts/aramaic/sichat-moshe/page-1/
tags:
- texts
- aramaic
- moshe
description: "תיאור קצר של תוכן הפרק (מופיע ב־meta description ובתצוגת חיפוש)."
notes:
- "**הערה 1** — ביאור מילולי."
- '**הערה 2** — הקבלה לחז"ל.'
---- צור תיקייה:
src/texts/<lang>/<book-id>/ - צור
index.mdעם מבוא מלא (300+ מילים) ו-comingSoon: trueבעת ההכנה,falseבעת השלמה - צור קבצי
page-1.md,page-2.md, … עם הפרקים - צור
main.jsonעם{"version": "main"} - הוסף רשומה ל-
src/_data/sources-catalog.json:{ "id": "new-book-id", "title": "שם החיבור בעברית", "lang": "aramaic", "description": "תיאור קצר.", "figure": "moshe", "parallelLayout": false } - הרץ
npm run ci:verify— אם עבר, החיבור מוכן.
חיבורים עם parallelLayout: true בקטלוג מציגים שתי עמודות. בכל פרק:
#### מקור סורי
[טקסט המקור בתעתיק עברי]
### תרגום עברי
[תרגום עברי]התבנית מפצלת אוטומטית על ### תרגום עברי ומציגה את המקור מימין והתרגום משמאל.
מבוא איכותי כולל:
- רקע היסטורי — מתי, היכן, על־ידי מי נכתב החיבור (לפי המסורת או המחקר)
- מקורות הנוסח — כתבי־יד, מהדורות, תרגומים קודמים
- מבנה החיבור — חלוקה לפרקים, חלקים, נושאים מרכזיים
- מעמד במסורת — יחס חז"ל, הכנסייה, הקאנון
- עקרונות התרגום — מתי מילולי, מתי משוחרר, החלטות עריכה מרכזיות
- מראי מקום — לפחות 3־5 מקורות אקדמיים מרכזיים
אורך יעד: 300–600 מילים.
פרק איכותי כולל:
- נוסח המקור (בחיבורי parallel) — בתעתיק עברי מדויק
- תרגום עברי — בלשון קלאסית מתונה, מילולי ככל האפשר
- הערות שוליים (
notes:בפרונטמטר) — לפחות הערה אחת לכל פסוק/פסקה עם:- ביאור מילולי (מונחים זרים)
- הקבלה למקרא
- הקבלה לחז"ל / רמב"ם / רמב"ן
- הקבלה בין־דתית (נצרות, אסלאם)
- רקע היסטורי
אורך יעד: 300+ מילים לפרק (למעט פרקים קצרים מטבעם, כמו קללות).
תיאור קצר (עד 180 תווים) של תוכן הפרק. מופיע ב-meta description, בתצוגת חיפוש Pagefind, ובשיתוף חברתי. אם חסר — המערכת תשתמש בתיאור ברירת מחדל גנרי.
- מנוע אתר: Eleventy 3.x (Nunjucks templates)
- עיצוב: CSS עם CSS variables — RTL, מצב כהה/בהיר, מערכת מרחבית
- פונטים: Self-hosted — Frank Ruhl Libre (עברית, WOFF2) + Noto Serif Hebrew (גיבוי) + EB Garamond (לוגו לטיני)
- חיפוש: Pagefind (סטטי)
- פריסה: GitHub Pages דרך GitHub Actions
- תגובות: Disqus (lazy-loaded)
- רישיון: CC0 1.0 (נחלת הכלל)
npm install
npm run dev # שרת פיתוח ב-port 5000
npm run build # בנייה מלאה + מיניפיקציה + Pagefind
npm run ci:verify # כל 16 בדיקות האימותsrc/
├── _data/ # קטלוגים (sources-catalog, figures, languages, updates)
├── _includes/ # תבניות Nunjucks
├── assets/ # פונטים, CSS, JS, תמונות
├── texts/ # כתבים לפי שפת מקור (8 שפות, 30 חיבורים — 3 פעילים)
├── by-figure/ # כתבים לפי דמות (9 דמויות + חטיבת תלמידי ישוע)
├── about.njk, license.njk, contact.njk, privacy.njk
├── index.njk # דף הבית
└── search.njk, updates.njk, sitemap.njk
scripts/
├── _lib/ # מודולים משותפים (walk, frontmatter, catalog)
├── verify-*.mjs # 15 בדיקות אימות
├── ci-verify.mjs # מריץ את כל הבדיקות
├── new-chapter.mjs # יצירת פרק חדש
└── report-content-status.mjs # דוח מצב תוכן
lib/
└── display-book-title.cjs # פילטר כותרת תצוגה
הפרויקט כולל 16 בדיקות אימות אוטומטיות שרצות בכל PR ובכל push:
npm run ci:verifyבדיקות עיקריות:
verify-frontmatter— סכמת פרונטמטר מלאהverify-catalog-consistency— התאמה בין קטלוג לפרונטמטרverify-text-structure— רצף מספור פרקיםverify-built-links— קישורים פנימיים תקיניםverify-intro-navigation— ניווט מבוא→פרק ראשוןverify-placeholders— סמני TODO/FIXMEverify-third-party-controls— תקינות אנליטיקס/Disqus/translateverify-display-book-titles— כותרות תצוגה עקביות
הערה: ה-CI בודק עקביות מבנית בלבד. הוא אינו בודק נוכחות תוכן טקסטואלי — לכן placeholder עם comingSoon: true עובר. לדוח אמיתי של מצב התוכן, הרץ npm run report:content.
התכנים באתר מופצים בנחלת הכלל (CC0 1.0) — ניתן להשתמש, לצטט ולשנות בחופשיות.
לשאלות, הצעות או תרומות תוכן — ראה עמוד צור קשר באתר, או פתח Issue ב-GitHub.