Logo Lanfrica

sinyasco/Algerian-Wordle

Domain:

natural language processing

Record type:

software
Creator:
sin
Host:
A full-stack Algerian Wordle game built with Next.js, TypeScript, Prisma, and Supabase, featuring Arabic and Arabizi modes with secure server-side game logic. # Algerian Wordle πŸ‡©πŸ‡Ώ A full-stack Wordle-style game for Algerian words, supporting both **Arabic script** and **Arabizi**. The application is built with Next.js and uses secure server-side game logic so the secret word is never exposed to the browser before the game ends. ## Features - Arabic and Arabizi game modes - English, French and Arabic interface languages - RTL interface support for Arabic - Six attempts per game - Dynamic word lengths - Arabic and QWERTY virtual keyboards - Correct, present and absent letter states - Secure credentials-based authentication - Persistent users and game sessions - Server-side word selection and guess evaluation - Responsive design and tile animations ## Technology stack - **Frontend:** Next.js, React, TypeScript and Tailwind CSS - **Backend:** Next.js App Router route handlers - **Database:** Supabase PostgreSQL - **ORM:** Prisma - **Authentication:** bcrypt, signed JWT and secure httpOnly cookies - **Validation:** Zod - **Deployment:** GitHub and Vercel ## How the game works 1. The player creates an account or signs in. 2. The player selects Arabic or Arabizi. 3. The server randomly selects an active word and creates a game session. 4. The client receives only the session ID and word length. 5. Every guess is sent to the server for validation and evaluation. 6. The server returns the state of each letter: - `correct`: right letter and right position - `present`: right letter but wrong position - `absent`: letter not present in the target word 7. The secret word is revealed only after a win or after the sixth failed attempt. ## Project structure ```text app/ β”œβ”€β”€ api/ β”‚ β”œβ”€β”€ auth/ # Signup, login, logout and current user β”‚ β”œβ”€β”€ game/ # Start game and submit guess β”‚ └── leaderboard/ # Score-based ranking endpoint β”œβ”€β”€ game/ # Game page β”œβ”€β”€ language/ # Word-language selection β”œβ”€β”€ login/ # Login page β”œβ”€β”€ menu/ # Main menu └── signup/ # Regist …