Skip to content

Latest commit

 

History

17 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sbiba Heritage Project

License Last Commit

Sbiba Heritage Project - Where Ancient Civilizations Meet
Explore Sbiba »

About Sbiba Heritage Project

"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.

Key Features

  • 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

Historical Significance

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

Tech Stack

Next.js 15 React 19 TypeScript Tailwind CSS Prisma

Frontend

Backend & Database

Cloud and AI Services

Getting Started

Prerequisites

  • 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.

Required Environment Variables

The following environment variables must be set in your .env file:

Authentication

  • AUTH_SECRET: Secret key for authentication

Database

  • DATABASE_URL: PostgreSQL connection string

Media Storage

  • AWS_ACCESS_KEY_ID: AWS access key ID
  • AWS_SECRET_ACCESS_KEY: AWS secret access key
  • AWS_REGION: AWS region
  • AWS_S3_BUCKET: AWS S3 bucket name

Email

  • EMAIL_FROM: Sender email address
  • EMAIL_SERVER_HOST: Azure Communication Services SMTP host
  • EMAIL_SERVER_PORT: Azure Communication Services SMTP port
  • EMAIL_SERVER_USER: Azure Communication Services SMTP username
  • EMAIL_SERVER_PASSWORD: Azure Communication Services SMTP password

AI Services

  • HUME_API_KEY: Hume AI API key for voice analysis
  • HUME_SECRET_KEY: Hume AI secret key
  • NEXT_PUBLIC_HUME_CONFIG_ID: Hume AI public configuration ID
  • HF_TOKEN: Hugging Face API token for image generation
  • REPLICATE_API_TOKEN: Replicate API token for AI models
  • TOGETHER_API_KEY: Together AI API key for text generation

Application URLs

  • NEXT_PUBLIC_APP_URL: Public URL of your application

Environment Validation

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

Installation

  1. Clone the repository:
git clone https://github.com/Ashref-dev/sbiba-heritage-project
  1. Install dependencies:
npm install
# or
bun install
  1. Copy the example environment file:
cp .env.example .env
  1. Set up your environment variables as listed above

  2. Initialize the database:

npx prisma db push
# or
bunx prisma db push
  1. Run the development server:
npm run dev
# or
bun dev

Deployment

Vercel PostgreSQL

This project is configured for easy deployment on Vercel with a PostgreSQL database.

Contributing

We welcome contributions from historians, developers, and anyone passionate about preserving cultural heritage! Please see our contribution guidelines for details.

Contact

For support or inquiries, contact us at heritage@sbiba-heritage.com

License

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

Project Roadmap

Phase 1: Core Website Development

  • Complete interactive map of historical sites
  • Implement virtual tour functionality
  • Develop multilingual content system
  • Create initial historical database

Phase 2: Community Engagement

  • Add oral history recording and archiving features
  • Implement community contribution system
  • Develop educational resources for schools
  • Create researcher portal with advanced search capabilities

Phase 3: Tourism Integration

  • 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

About

The Sbiba Heritage Project is dedicated to preserving and promoting the rich cultural and historical legacy of the Sbiba region in Kasserine, Tunisia.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages