Initial Commit

This commit is contained in:
2026-02-12 16:50:29 -05:00
commit a1da041f14
74 changed files with 6140 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
## Why
ClawFort currently publishes content in a single language, which limits accessibility for regional audiences. Adding multilingual delivery now improves usability for Tamil and Malayalam readers while keeping the current English workflow intact.
## What Changes
- **New Capabilities:**
- Persist the fetched articles locally in database.
- Generate Tamil and Malayalam translations for each newly created article using Perplexity.
- Store translated variants as language-specific content items linked to the same base article.
- Add a language selector on the landing page to switch article rendering language.
- Persist user language preference in browser storage (local storage or cookie) and restore it for returning users.
- **Frontend:**
- Add visible language switcher UI on the one-page experience.
- Render hero and feed content in selected language when translation exists.
- **Backend:**
- Extend content generation flow to request and save multilingual outputs.
- Serve language-specific content for existing API reads.
## Capabilities
### New Capabilities
- `article-translations-ml-tm`: Create and store Tamil and Malayalam translated content variants for each article at creation time.
- `language-aware-content-delivery`: Return and render language-specific article fields based on selected language.
- `language-preference-persistence`: Persist and restore user-selected language across sessions for returning users.
### Modified Capabilities
- None.
## Impact
- **Code:** Backend aggregation/storage flow, API response handling, and frontend rendering/state management will be updated.
- **APIs:** Existing read endpoints will need language-aware response behavior or language selection input handling.
- **Dependencies:** Reuses Perplexity integration; no mandatory new external provider expected.
- **Infrastructure:** No deployment topology changes.
- **Environment:** Uses existing Perplexity configuration; may introduce optional translation toggles/settings later.
- **Data:** Adds translation data model/fields linked to each source article.