Logo Lanfrica

b-aser/amharic-proverbs-website-v2

Domaine:

natural language processing

Type de record:

software
Créateur:
b-a
Hôte:
# Amharic Proverbs Archive 🇪🇹 An elegant, dynamic, and searchable archive of Amharic proverbs (ምሳሌያዊ አነጋገሮች). This platform serves as a cultural repository to preserve Ethiopian oral heritage, offering Amharic text, English translations, transliterations, and deep cultural meanings. ## 🌟 Features - **Dynamic Proverb Grid:** Browse proverbs by category with a beautiful, responsive masonry-style layout. - **Search & Filter:** Instantly search proverbs by Amharic text or English translation, and filter by tags (Wisdom, Family, Nature, etc.). - **Featured Proverbs:** A built-in "Shuffle" feature to discover a random "Proverb of the Day". - **Public Submissions:** Visitors can submit their own proverbs for review. - **Admin Dashboard:** - Manage (Add/Edit/Delete) proverbs and categories. - **Bulk Import:** Upload proverbs via CSV or Excel (`.xlsx`) files. - Manage site-wide settings (e.g., website name, logo). - **Social Sharing:** Easily copy proverbs or share them directly to Twitter, Facebook, and WhatsApp. ## 🛠️ Tech Stack This project uses a monorepo structure, separating the frontend and backend. ### Frontend (`/client`) - **Framework:** Next.js (React) - **Styling:** Tailwind CSS + Vanilla CSS (for custom themes) - **Icons:** React Icons (`lucide`, `fa6`) ### Backend (`/server`) - **Server:** Node.js + Express - **Database:** PostgreSQL - **Authentication:** JWT-based secure auth via HTTP-only cookies - **File Processing:** `multer`, `csv-parser`, `xlsx` (for bulk imports) ## 🚀 Getting Started ### Prerequisites - Node.js (v18+) - `pnpm` package manager - PostgreSQL (or Docker to run the included `docker-compose.yml`) ### Installation 1. **Clone the repository:** ```bash git clone github.com cd amharic-proverbs-website-v2 ``` 2. **Install dependencies:** From the root folder, run: ```bash pnpm install ``` *(This will automatically install dependencies for both the `client` and `server` folders).* 3. **Data …