Skip to content

Repository files navigation

Tourism App — Exam Project

Build Status

A modern ASP.NET Core (.NET 8) web application (Razor Pages) designed to provide an immersive tourism exploration experience, featuring personalized preferences, real-time data synchronization, and AI integration.

Overview

The project focuses on delivering a seamless user experience for travelers:

  • Identity Management: Full registration, authentication, and password recovery flow.
  • Smart Onboarding: First-login preference collection and email verification.
  • Discovery Hub: Category filters, full-text search, and interactive maps via Google Maps.
  • Intelligent Ranking: Geolocation-aware sorting with personalized content fallback mechanisms.
  • AI Integration: A dedicated tour guide powered by local LLMs (Ollama) with RAG context injection.

Team & Contributors

ID Name Role & Responsibility Email
132676 Diego Marinangeli Backend & Security (Auth, RAG Logic, Proximity) diego.marinangeli@studenti.unicam.it
133115 Riccardo Marini AI & Architecture (Data Ingestion, Chatbot, Ranking) riccardo.marini@studenti.unicam.it
132380 Francesco Caldarelli Frontend & UX (UI Design, Mobile Responsiveness) francesco.caldarelli@studenti.unicam.it

Tech Stack

Layer Technology
Backend .NET 8 / C# 12
UI Framework Razor Pages & MVC
Database Entity Framework Core (SQL Server)
Auth ASP.NET Core Identity
Frontend Bootstrap 5 & Bootstrap Icons
AI Engine Ollama (Llama 3.1)
Testing xUnit, Moq, GitHub Actions (CI)

Project Structure

  • Controllers/ – API and MVC endpoints.
  • Pages/ – Primary UI layer (Razor Pages).
  • Data/ – AppDbContext, migrations, and domain entities.
  • Services/ – Core logic (TourismApiService, AiService, etc.).
  • wwwroot/ – Static assets (CSS, JS, images).
  • .github/ – CI/CD Workflows.

Getting Started

Prerequisites

  • .NET SDK 8
  • SQL Server (LocalDB or full instance)
  • Ollama (Required for AI features)
  • EF Core CLI Tools: dotnet tool install --global dotnet-ef

Setup & Installation

  1. Clone the repository:
    git clone [https://github.com/SPM-25-26/DFR.git](https://github.com/SPM-25-26/DFR.git)
    cd DFR
  2. Database Configuration: Update the Default connection string in appsettings.json.
  3. Initialize Database:
    dotnet ef database update
  4. Run the App:
    dotnet run

AI Tour Guide Configuration

The application includes a local AI service via Ollama.

  • Endpoint: http://localhost:11434/api/chat
  • Model: llama3.1
  • Instruction: Run ollama pull llama3.1 before starting.
  • Function: Exclusive focus on Matelica tourism providing concise English responses.

Exam Project for Software Project Management 2025/2026

About

A cutting-edge ASP.NET Core 8 platform delivering immersive travel experiences through real-time data sync, geolocation-aware discovery, and interactive mapping. It features a secure identity system and a local AI tour guide (Ollama) specifically tailored for intelligent, localized tourism insights.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages