# The Open Library of Somali Community
A digital platform for discovering, preserving, and sharing Somali literature and cultural heritage.
This is a Next.js project built with React, TailwindCSS, and MongoDB.
## Features
- **Multilingual Support**: English, Somali, and Arabic
- **Material Categories**: Books, Manuscripts, Audio, and Academic Research
- **User Authentication**: Secure login and registration
- **User Dashboard**: Manage contributions, favorites, and downloads
- **Admin Panel**: Content moderation and site management
- **Advanced Search**: Filter by category, language, year, and more
- **Responsive Design**: Works on all devices
## Prerequisites
- Node.js 18.x or later
- MongoDB (local or Atlas)
- npm or yarn
## Getting Started
1. Clone the repository:
```bash
git clone
github.com
cd somali-library
```
2. Install dependencies:
```bash
npm install
# or
yarn install
```
3. Set up environment variables:
```bash
cp .env.example .env.local
```
Edit `.env.local` with your MongoDB connection string and other configuration.
4. Seed the database with sample data:
```bash
npm run seed
# or
yarn seed
```
5. Run the development server:
```bash
npm run dev
# or
yarn dev
```
Open
localhost with your browser to see the result.
## Deployment
This project is configured for deployment on Vercel, which is the recommended hosting platform for Next.js applications.
### Deploying to Vercel
1. Create an account on Vercel if you don't have one already
2. Install the Vercel CLI:
```bash
npm install -g vercel
```
3. Login to Vercel:
```bash
vercel login
```
4. Deploy the project:
```bash
npm run deploy
```
or
```bash
vercel --prod
```
### Environment Variables
The following environment variables should be set in your Vercel project settings:
- `MONGODB_URI`: MongoDB connection string
- `JWT_SECRET`: Secret key for JWT token generation
- `NEXTAUTH_URL`: The URL of your deployed site
- `NEXTAUTH_SECRET …