Mtaani: AI-powered responsible tourism platform for Kenya with real-time safety monitoring, verified local businesses, and intelligent geospatial guidance.
# Mtaani - AI-Powered Responsible Tourism Platform for Kenya
Mtaani is a tourism platform that combines AI assistance, real-time safety monitoring, verified local businesses, and community-driven insights to help travelers discover and navigate Nairobi safely.
## Features
### Core Platform
- User authentication with phone verification
- Real-time social feed with posts and interactions
- AI travel assistant with conversation memory
- Interactive map with PostGIS geospatial data
- Emergency system with SOS and location sharing
- Dark and light mode support
### Social Features
- Create, view, and interact with posts
- Like, comment, repost, share, and bookmark with live counters
- Read receipts with delivery and read status
- Typing indicators in feed comments
- Online presence tracking
### AI Intelligence
- Conversation memory across sessions
- Nairobi knowledge base integration
- Semantic search for relevant information
- Personalized recommendations based on user preferences
### UI/UX
- Loading skeletons for content fetching
- Pull-to-refresh on mobile devices
- Optimistic updates for instant post creation
- Glassmorphic floating chat panel
- Infinite scroll pagination
### Technology Stack
- Backend: Elixir 1.19+, Phoenix 1.7.21, LiveView 1.0.18
- Database: PostgreSQL 18 with PostGIS 3.6
- Caching: Redis for read receipts and session management
- Vector Database: Pinecone for RAG memory
- AI: Groq API with Llama 3, HuggingFace embeddings
- Frontend: Tailwind CSS, MapLibre GL
- Maps: OpenStreetMap with PostGIS geospatial queries
## Prerequisites
- Elixir 1.19+ and Erlang/OTP 26+
- PostgreSQL 16+ with PostGIS
- Node.js 22+
- Redis
- Git
## Installation
Clone the repository:
````bash
git clone
github.com
cd Mtaani ```
````
Install Elixir dependencies:
```bash
mix deps.get
```
Install Node Dependancies
```bash
cd assets && npm install && cd ..
```
Configure your database in config/dev.exs with your PostgreSQL credentia …