Guejmi - Tunisian Crowd-Sourced Dictionary
Project Overview
Guejmi is a crowd-sourced dictionary for the Tunisian dialect (Derja), designed to bridge the gap between Latin-script "Arabizi" and Arabic script. It features a modern, culturally resonant UI and a robust backend capable of handling complex linguistic nuances.
Core Philosophy
- The "Tunisian Touch": A visual identity reflecting Tunisian culture (colors, patterns, typography).
- Linguistic Inclusivity: Seamless support for both Latin and Arabic scripts.
- Community Driven: Crowd-sourced definitions with a voting and reporting system.
Technology Stack
Frontend
- Framework: Next.js (React)
- Styling: Tailwind CSS v4, Vanilla CSS variables
- UI Library: shadcn/ui components
- Animations: Framer Motion
- Fonts: Cairo (Arabic), Inter (Latin)
Backend
- Framework: Django (Python)
- Database: PostgreSQL (with GIN Indexing for performance)
- API: Django REST Framework
- Authentication: django-allauth (Social Login)
Key Features
- Cross-Script Search: Search in Arabizi, find Arabic results (and vice versa).
- Smart Merge System: Prevents duplicate entries by detecting similar words and prompting users to merge.
- Social Login: Seamless authentication via Google, Facebook, and X (Twitter).
- Dynamic Word Display: Smartly prioritizes Arabic or Latin titles based on search context.
- Word of the Day: Daily featured words to engage users.
Directory Structure
/frontend: Next.js application code./backend: Django application code./Documentation: Project documentation (You are here).