Skip to content

Repository files navigation

Talmudy

The Searchable Talmud"Talmud is complicated enough... the search doesn't have to be."

A unified platform combining a Talmud search engine, the Color Tiles visual learning system, and KANDLES color-encoding tools — all sharing one design system and one data core.


Table of Contents


What is Talmudy?

Talmudy is a search engine for the Talmud — a "Google for the Talmud." The Babylonian Talmud spans 63 tractates across 2,711 double-sided pages (roughly 5,000+ pages), making it larger than the Encyclopedia Britannica. Yet it has:

  • No index
  • No headings
  • No page numbers as we know them
  • No vowels or punctuation in the original text
  • Random acronyms and abbreviations
  • Contradictory repeat sections across thousands of pages

Talmudy indexes and categorizes the entire Talmud, allowing users to search by topic, personality, tractate, or keyword. Results display exact tractate locations, frequency counts, and English translations of the original source text in a straightforward question-answer format.

Core Features

Feature Description
Full-text search Search across 37+ tractates and 1,000+ indexed passages
Tractate navigation Browse by tractate and page (amud) with color-coded grids
Category browser 14 keyword categories × 7 color rows for visual browsing
English translations Q&A dialogue format with source citations
Aramaic/Hebrew source Original text displayed alongside translations
Rabbi/person index Tannaim, Amoraim, Rishonim, Acharonim, and biblical figures
Tanach cross-reference Torah book filtering integrated with Talmud search
Color grid reader 7×7 KANDLES color grids for visual text encoding

What are Color Tiles?

The Color Tiles System is a visual learning technology that converts complex written information into standardized, human-recognizable color patterns. It maps each word's first consonant sound to one of 7 colors (plus black for empty/padding).

Target Audience

  • Jewish educational organizations: Chabad, Aish, Hebrew schools, synagogues
  • Ages 6–12: Children overwhelmed by unfamiliar alphabets and difficult vocabulary
  • Adult beginners and converts: Visual companion that reduces intimidation
  • Anyone: A new way to see patterns in text

How It Works

Rather than replacing traditional learning, Color Tiles functions as a visual companion layer — an indexing system that sits on top of existing educational resources. Each word's first consonant sound determines its color, creating a unique "color fingerprint" for every passage of text.

The same technology is also applicable to:

  • Music education: Children ages 3–8 follow color patterns to play songs on color-coded keyboards
  • Language learning: Visual patterns across 60+ languages
  • Text analysis: Pattern recognition in any phonetic text

What is KANDLES?

KANDLES (US Patent 2024/0248922 A1) is the patented system underlying the Color Tiles technology. The patent, titled "System and Methods for Searching Text Utilizing Categorical Touch Inputs," defines a fixed phonetic-to-color mapping algorithm invented by Mike Merkur.

The name KANDLES is a mnemonic derived from the color-number associations:

# Color Mnemonic Phonetic Category
1 Yellow Kandles (Sun) K, G, J, Ch
2 Gray Moon M, N
3 Red Torch (Fire) T, D, Th
4 Blue River (Water) R, L
5 Green Tree (Wood) Y, W, H, Kh
6 Purple Petal (Flower) P, B, F, V
7 Brown Soil S, Z, Sh
0 Black Empty / padding

The 7×7 Grid

Text is encoded into a 7×7 grid (49 cells). Each word's first consonant sound maps to its KANDLES number (1–7), and the corresponding cell is colored accordingly. Each grid encodes approximately 17 characters of text.

Multiple grids can be arranged in sequence (4 squares displayed at once in the reader) to encode longer passages. A minimap provides navigation across the full text.

Applications

  • Text encoding: Convert any phonetic text to color grids
  • Physical blocks: Arrange colored blocks (Mega Bloks) on a baseplate to encode messages
  • Camera decoding: Use ML Kit to scan physical block grids and decode the message
  • Visual search: Search Talmud text by color patterns, not just keywords

The KANDLES Color Mapping

CSS Design Tokens

:root {
  --k0: #000000;  /* black  — empty / padding   */
  --k1: #ffd700;  /* gold   — K, G, J, Ch       */
  --k2: #c0c0c0;  /* silver — M, N              */
  --k3: #ff0000;  /* red    — T, D, Th          */
  --k4: #6666ff;  /* blue   — R, L              */
  --k5: #00aa00;  /* green  — Y, W, H, Kh       */
  --k6: #aa33ff;  /* purple — P, B, F, V        */
  --k7: #aa6633;  /* brown  — S, Z, Sh          */
}

Encoding Algorithm

For each word in the input text:
  1. Extract the first consonant sound
  2. Map to KANDLES number (1–7) using the phonetic table
  3. Place in the next available cell of the 7×7 grid
  4. Fill remaining cells with 0 (black)

Example

The phrase "The Searchable Talmud" encodes as:

Word First Consonant KANDLES # Color
The Th → T 3 Red
Searchable S 7 Brown
Talmud T 3 Red

Project Structure

talmudy/
├── apps/
│   └── web/                          # Next.js application
│       ├── app/                      # App Router routes
│       │   ├── page.tsx              # Search Hub (home)
│       │   ├── reader/[tractate]/[amud]/page.tsx
│       │   ├── browse/page.tsx       # Category browser
│       │   ├── learn/                # Color Tiles education
│       │   └── tools/
│       │       ├── encoder/page.tsx
│       │       └── decoder/page.tsx
│       └── components/               # React components
├── packages/
│   ├── kandles-core/                 # Patent-critical shared library
│   │   ├── src/
│   │   │   ├── mapping.ts            # Phoneme → color-number table
│   │   │   ├── encode.ts             # Text → grid codes
│   │   │   └── grid.ts               # 7×7 grid math
│   │   └── src/__tests__/            # Golden tests from patent examples
│   ├── data/                         # Normalized content + types
│   │   ├── content/
│   │   │   ├── tractates.json
│   │   │   ├── passages/
│   │   │   ├── grids/
│   │   │   └── keywords.json
│   │   └── src/
│   └── ui/                           # Design system
│       ├── tokens.css                # c0–c7 custom properties
│       └── src/                      # ColorCell, ColorGrid, Minimap…
├── tools/
│   └── etl/                          # Migration scripts
│       ├── extract-015.ts            # Parse legacy data-block.js
│       ├── extract-016.ts            # Parse legacy data.js
│       ├── normalize.ts
│       └── validate.ts
├── docs/                             # Documentation
│   ├── architecture.md
│   ├── kandles-spec.md
│   ├── data-migration.md
│   ├── roadmap.md
│   └── contributing.md
├── plans/                            # Architecture plans
├── README.md
├── LICENSE
├── CONTRIBUTING.md
├── .gitignore
├── package.json
├── pnpm-workspace.yaml
└── turbo.json

Tech Stack

Layer Technology Rationale
Language TypeScript (strict) Type safety for structured Talmud data and KANDLES grids
Framework Next.js 15 (App Router) + React 19 Static generation for unchanging Talmud content; aligns with future React Native mobile app
Styling Tailwind CSS 4 + CSS custom properties KANDLES c0–c7 colors as design tokens
Monorepo pnpm workspaces + Turborepo Shared packages consumed by web app now, mobile app later
Data (v1) Build-time ETL → typed JSON modules Zero backend; matches current all-static reality
Search (v1) FlexSearch (client-side) ~1,000–5,000 passages is tiny; no server needed
Validation Zod Schema validation for all content at build time
Testing Vitest + Playwright Golden tests for KANDLES encoder; e2e smoke tests
Hebrew/Aramaic RTL-first components, SBL Hebrew / Ezra SIL fonts Proper rendering of source text
Hosting Vercel (static + edge) Zero-ops for a static-first app
Mobile (future) Expo / React Native Reuses kandles-core and ui tokens

Getting Started

Prerequisites

  • Node.js ≥ 20
  • pnpm ≥ 9
  • Git

Setup

# Clone the repository
git clone https://github.com/tbitcs/talmudy.git
cd talmudy

# Install dependencies
pnpm install

# Run the ETL pipeline to migrate legacy data
pnpm etl

# Start the development server
pnpm dev

The app will be available at http://localhost:3000.

Available Scripts

Command Description
pnpm dev Start Next.js dev server
pnpm build Build for production (static generation)
pnpm etl Run legacy data migration pipeline
pnpm test Run Vitest unit tests
pnpm test:e2e Run Playwright e2e tests
pnpm lint Run ESLint + Prettier
pnpm typecheck Run TypeScript type checking

Documentation

  • Architecture — Full platform architecture, component tree, data flow, state management
  • KANDLES Specification — Patent algorithm, phonetic mapping table, grid encoding rules
  • Data Migration — ETL strategy for migrating from legacy AngularJS data files
  • Roadmap — Phased build-out plan (6 phases)
  • Contributing — How to contribute

Roadmap

Phase Deliverable Status
0 — Scaffold & ETL Monorepo, kandles-core with golden tests, ETL pipeline, validated data 🔜 Planned
1 — Search Engine Search Hub, passage pages, FlexSearch index, URL-driven filters 🔜 Planned
2 — Reader Color-grid reader, 4 squares, minimap, page navigation 🔜 Planned
3 — Browse Category browser, keyword buttons, history panels 🔜 Planned
4 — Learn Color Tiles education layer, charts, lessons, practice mode 🔜 Planned
5 — Encoder Text → grid encoder tool, print/export for physical blocks 🔜 Planned
6 — Mobile Expo app with camera decoder (ML Kit) for physical block scanning 🔜 Planned

See docs/roadmap.md for detailed milestones and exit criteria.


License & Patent

Software License

Copyright © 2024–2026 Mike Merkur and Tristen Pierson. All rights reserved.

This software is proprietary and confidential. Unauthorized copying, distribution, modification, or use of this software, via any medium, is strictly prohibited without prior written permission from the copyright holders.

See LICENSE for the full license terms.

Patent

The KANDLES color-encoding system is protected by US Patent 2024/0248922 A1"System and Methods for Searching Text Utilizing Categorical Touch Inputs" — filed January 19, 2024 by Mike Merkur.

Any implementation of the KANDLES phonetic-to-color mapping algorithm, the 7×7 grid encoding system, or the color-number-phoneme associations described herein may require a license from the patent holder.


Authors

Name Role
Mike Merkur Inventor of KANDLES, patent holder, content architect
Tristen Pierson Lead developer, platform architect

Acknowledgments

The Talmud content indexed in this platform draws from centuries of Jewish scholarship. The English translations and source references are compiled from traditional commentaries and modern resources.

The legacy codebase (programs 001–018) was developed iteratively from 2019–2024, evolving from static HTML pages to an AngularJS single-page application with over 1,000 indexed Talmud passages across 37 tractates.


"Talmud is complicated enough... the search doesn't have to be."

About

The Searchable Talmud: unified platform for Talmud search, Color Tiles learning, and KANDLES color-encoding tools

Topics

Resources

Contributing

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages