YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
π€ NUMID.AI
Ancient languages, future minds.
A futuristic AI-powered translation platform that bridges 5,000 years of human writing β from Sumerian cuneiform to Phoenician abjad, Egyptian hieroglyphs to Old Norse runes β powered by Anthropic Claude.
β¨ What It Does
Numid.ai translates modern text into 17 ancient and classical writing systems, rendering authentic Unicode scripts with:
- Authentic script rendering β real Unicode characters for each writing system
- Phonetic transliteration β IPA and scholarly romanization
- Word-by-word breakdown β sign-by-sign analysis
- Cultural & historical context β why certain words/signs were chosen
- Pronunciation guide β how ancient peoples would have sounded
- Confidence ratings β honest about reconstructed languages
- Cross-language comparison β same phrase in 6 scripts simultaneously
- Historical timeline β visual journey through 5,000 years of writing
πΏ Supported Ancient Languages (17)
| Language | Era | Script | Direction |
|---|---|---|---|
| Phoenician | 1050β150 BCE | Phoenician Abjad | RTL |
| Sumerian | 3500β2000 BCE | Cuneiform | LTR |
| Akkadian | 2800β100 BCE | Cuneiform | LTR |
| Ancient Egyptian | 3200 BCEβ4th c CE | Hieroglyphics | RTL |
| Proto-Sinaitic | 1900β1500 BCE | Pictographic | RTL |
| Ugaritic | 1400β1185 BCE | Cuneiform Alphabet | LTR |
| Imperial Aramaic | 800 BCEβ600 CE | Aramaic Abjad | RTL |
| Old Persian | 600β300 BCE | Cuneiform | LTR |
| Linear B | 1450β1200 BCE | Syllabary | LTR |
| Gothic | 350β800 CE | Gothic Alphabet | LTR |
| Etruscan | 700β100 BCE | Old Italic | RTL |
| Classic Maya | 250β900 CE | Maya Glyphs | LTR |
| Vedic Sanskrit | 1500β200 BCE | Brahmi | LTR |
| Classical Latin | 75 BCEβ600 CE | Roman | LTR |
| Ancient Greek | 800β300 BCE | Greek | LTR |
| Old Norse | 800β1300 CE | Runes | LTR |
| Coptic | 200β17th c CE | Coptic | LTR |
ποΈ Repository Structure
numid-ai/
β
βββ backend/ # Python FastAPI server
β βββ main.py # App entry point, CORS, routes mounting
β βββ requirements.txt # Python dependencies
β βββ __init__.py
β β
β βββ models/
β β βββ __init__.py
β β βββ languages.py # Full language catalogue (17 languages)
β β
β βββ routers/
β β βββ __init__.py
β β βββ translate.py # All API endpoints
β β
β βββ services/
β β βββ __init__.py
β β βββ translator.py # Anthropic Claude translation engine
β β βββ audio.py # TTS pronunciation generation
β β
β βββ utils/
β βββ __init__.py
β
βββ frontend/ # React application
β βββ package.json
β βββ public/
β β βββ index.html
β βββ src/
β βββ index.js # React entry point
β βββ App.jsx # Root component, nav, star field
β β
β βββ pages/
β β βββ TranslatorPage.jsx # Main translation UI
β β βββ TimelinePage.jsx # Historical language timeline
β β βββ ComparePage.jsx # Multi-language comparison
β β
β βββ components/
β β βββ LanguageCard.jsx # Individual language selector card
β β βββ TranslationResult.jsx # Full translation display
β β
β βββ hooks/
β β βββ useTranslation.js # API hooks (languages, translate, compare)
β β
β βββ styles/
β βββ globals.css # Design system, variables, animations
β
βββ docs/ # Documentation
β
βββ .env # Your config (not committed)
βββ .env.example # Template
βββ .gitignore
βββ README.md
π Quick Start
Prerequisites
- Python 3.10+
- Node.js 18+
- An Anthropic API key from console.anthropic.com
1. Setup
unzip numid-ai.zip
cd numid-ai
cp .env.example .env
Edit .env and set your ANTHROPIC_API_KEY.
2. Backend
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
cd ..
python -m backend.main
# β API running at http://localhost:8000
# β Docs at http://localhost:8000/docs
3. Frontend
cd frontend
npm install
npm start
# β App at http://localhost:3000
π API Reference
GET /api/v1/languages
Returns all 17 languages with full metadata.
POST /api/v1/translate
{
"text": "The stars are eternal",
"target_language_id": "phoenician",
"source_language": "auto",
"style": "formal"
}
style options: formal | poetic | conversational | inscription
POST /api/v1/compare
{
"text": "I am the king",
"language_ids": ["sumerian", "ancient_egyptian", "phoenician"]
}
POST /api/v1/pronunciation
{
"script_text": "π€π€π€",
"language_id": "phoenician"
}
GET /api/v1/timeline
Languages grouped by historical era.
βοΈ Environment Variables
| Variable | Required | Description |
|---|---|---|
ANTHROPIC_API_KEY |
β | Powers all translations via Claude |
HOST |
no | Backend host (default 0.0.0.0) |
PORT |
no | Backend port (default 8000) |
DEBUG |
no | Hot reload in development |
TTS_PROVIDER |
no | offline or google for audio |
GOOGLE_TTS_API_KEY |
no | Enhanced audio pronunciation |
MAX_TOKENS_PER_REQUEST |
no | Claude token limit (default 4096) |
π§ How the AI Translation Works
- System prompt instructs Claude as an expert in all 17 ancient language systems
- Claude translates the modern text, choosing appropriate signs/letters
- Returns structured JSON: script rendering, IPA, word breakdown, cultural notes
- For extinct/reconstructed languages, Claude is honest about confidence level
- Responses are cached (1 hour) to minimize API calls
- Parallel translation available for cross-language comparison
ποΈ Philosophy
"Every alphabet you know descends from Phoenician merchants scratching consonants onto clay in 1050 BCE. Every number you write traces to Sumerian accountants in Ur. We don't start from scratch β we stand on 5,000 years of human ingenuity."
β Numid.ai
π License
MIT β free to use, fork, and build upon. If you build something cool, share it.