Logo Lanfrica

Ka-few/hadithi-zetu

Record type:

software
Creator:
Ka-
Host:
An African cultural storytelling platform # Hadithi Zetu - African Cultural Storytelling Platform A digital reading platform similar to Kindle, tailored for African cultural storytelling. ## Features - **User Authentication**: JWT-based login and registration. - **Reading Progress**: Remembers the last read page for EPUB books. - **Author Dashboard**: Allows authors to upload books (EPUB/PDF) and covers. - **Admin Dashboard**: Moderation flow to approve or reject books. - **Book Discovery**: Homepage with search and category filtering. ## Tech Stack - **Frontend**: Next.js, React, TailwindCSS, EPUB.js - **Backend**: FastAPI (Python), SQLAlchemy - **Database**: PostgreSQL ## How to Run Locally ### 1. Start the Database ```bash docker-compose up -d ``` ### 2. Start the Backend API Make sure you have python3 installed. ```bash cd backend python3 -m venv venv source venv/bin/activate pip install -r requirements.txt uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload ``` ### 3. Start the Frontend Application In a separate terminal: ```bash cd frontend npm install npm run dev ``` Visit `localhost` to view the application! ## Testing Accounts Create new accounts directly on the `/register` page. You can check the "Author" box to get an author account. If you want to test the Admin dashboard, you will need to manually set the `is_admin` flag to `True` for a user in the PostgreSQL database.

Licenses