Sbiba Heritage Project - Where Ancient Civilizations Meet
Explore Sbiba »
"Where ancient Berber wisdom meets Roman grandeur, Sbiba is a living museum of Mediterranean civilizations"
The Sbiba Heritage Project is dedicated to preserving and promoting the rich cultural and historical legacy of the Sbiba region in Kasserine, Tunisia. Our interactive platform showcases the area's archaeological treasures, traditional practices, and the vibrant intersection of Berber, Roman, Byzantine, and Islamic influences that have shaped this remarkable region over millennia.
- Interactive Historical Timeline: Explore Sbiba's evolution from prehistoric settlements to modern times-
- Community Stories: Listen to oral histories and personal accounts from local residents
- Educational Resources: Access curriculum materials for students and researchers
- Visitor Information: Practical guides for planning your visit to the Sbiba region
Sbiba (ancient Sufes) stands as a testament to Tunisia's rich multicultural heritage:
- Berber Origins: Indigenous settlements dating back thousands of years
- Roman Influence: Magnificent ruins including temples, baths, and administrative buildings
- Byzantine Period: Religious structures and defensive fortifications
- Islamic Heritage: Mosques, madrasas, and cultural traditions that continue today
- Living Traditions: Ongoing cultural practices that blend ancient wisdom with contemporary life
- Next.js 15 - React Framework
- React - UI Library
- TypeScript - Programming Language
- Tailwind CSS - Styling
- shadcn/ui - UI Components
- PostgreSQL - Database
- Prisma - ORM
- Neon - Serverless Postgres
- Auth.js v5 - Authentication
- Server Actions - API Endpoints
- AWS S3 - Media Storage
- Azure Communication Services - Email Delivery
- OpenAI - AI for Text Generation
- Hume AI - AI for Voice Analysis
- FAL AI - AI for Image Generation
- Contentlayer - Content Management
- Node.js 18.x or higher, or Bun runtime
Important:
This project uses @t3-oss/env-nextjs for runtime environment variable validation. The validation schema is defined in env.mjs and ensures all required environment variables are present with the correct types.
The following environment variables must be set in your .env file:
AUTH_SECRET: Secret key for authentication
DATABASE_URL: PostgreSQL connection string
AWS_ACCESS_KEY_ID: AWS access key IDAWS_SECRET_ACCESS_KEY: AWS secret access keyAWS_REGION: AWS regionAWS_S3_BUCKET: AWS S3 bucket name
EMAIL_FROM: Sender email addressEMAIL_SERVER_HOST: Azure Communication Services SMTP hostEMAIL_SERVER_PORT: Azure Communication Services SMTP portEMAIL_SERVER_USER: Azure Communication Services SMTP usernameEMAIL_SERVER_PASSWORD: Azure Communication Services SMTP password
HUME_API_KEY: Hume AI API key for voice analysisHUME_SECRET_KEY: Hume AI secret keyNEXT_PUBLIC_HUME_CONFIG_ID: Hume AI public configuration IDHF_TOKEN: Hugging Face API token for image generationREPLICATE_API_TOKEN: Replicate API token for AI modelsTOGETHER_API_KEY: Together AI API key for text generation
NEXT_PUBLIC_APP_URL: Public URL of your application
The project uses strict runtime validation for environment variables:
- Server-side variables are validated before the server starts
- Client-side variables are validated during build time
- Type-safe access to environment variables throughout the application
- Helpful error messages if required variables are missing
- Clone the repository:
git clone https://github.com/Ashref-dev/sbiba-heritage-project- Install dependencies:
npm install
# or
bun install- Copy the example environment file:
cp .env.example .env-
Set up your environment variables as listed above
-
Initialize the database:
npx prisma db push
# or
bunx prisma db push- Run the development server:
npm run dev
# or
bun devThis project is configured for easy deployment on Vercel with a PostgreSQL database.
We welcome contributions from historians, developers, and anyone passionate about preserving cultural heritage! Please see our contribution guidelines for details.
For support or inquiries, contact us at heritage@sbiba-heritage.com
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See the LICENSE file for details.
The AGPL-3.0 license ensures that:
- You can use this software freely
- You can modify and distribute this software
- If you modify and share this software, you must:
- Make your modifications available under the same license
- Share the source code when you deploy modified versions
- Preserve copyright notices and license information
- Complete interactive map of historical sites
- Implement virtual tour functionality
- Develop multilingual content system
- Create initial historical database
- Add oral history recording and archiving features
- Implement community contribution system
- Develop educational resources for schools
- Create researcher portal with advanced search capabilities
- Develop mobile companion app for on-site visits
- Implement augmented reality features for key monuments
- Create booking system for local guides and accommodations
- Establish partnerships with tourism authorities
