Skip to content

therealodineye/afro-hair-salon-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Constance's Hair Art — Production Website

Live site: constancehairart.com

Private production repository for Constance's Hair Art — a premium African hair salon in Stavanger, Norway.

Developed by TheRealOdinEYE

Public open-source template (no credentials): afro-hair-salon-website


Stack

Layer Technology
Framework Next.js 14 (App Router)
Language TypeScript
Styling Tailwind CSS
Database SQLite via Prisma 7
Auth NextAuth.js v4
AI Chatbot Google Gemini 2.0 Flash
Human Handoff Telegram Bot API
Email Nodemailer (Gmail SMTP)
Calendar Google Calendar API
Container Docker + Docker Compose

Features

  • AI chatbot (Norwegian + English auto-detect) with human handoff to Telegram
  • Online booking system with email confirmations
  • Google Calendar two-way sync
  • Instagram feed integration
  • Admin panel at /admin
  • RAG knowledge base (markdown files in /data)
  • Rate limiting, security headers, httpOnly session cookies

Deployment

# Build and start
docker compose up -d --build

# Restart without rebuild
docker compose restart

# View logs
docker logs hair-art -f

Site runs on port 8081.


Environment

All credentials are in .env (gitignored — never committed).
Copy .env.example for reference on required variables.


Telegram Webhook

Register once after deploy or domain change:

curl -X POST "https://api.telegram.org/bot<TOKEN>/setWebhook" \
  -d "url=https://constancehairart.com/api/chat/telegram-webhook" \
  -d "secret_token=<TELEGRAM_WEBHOOK_SECRET>" \
  -d "allowed_updates=[\"message\"]"

Reply to customers from Telegram:

/reply <session-id-8-chars> Your message here

Knowledge Base

Edit markdown files in /data — no code changes needed:

File Contents
data/services.md Services and descriptions
data/prices.md Pricing table
data/faq.md FAQ (Norwegian + English)
data/opening_hours.md Hours and booking policy
data/contact.md Address and directions

Apply changes without full rebuild:

docker cp data/services.md hair-art:/app/data/services.md

Admin Panel

URL: /admin
Change password immediately after first login.


Local Development

npm install
cp .env.example .env   # fill in values
npx prisma migrate dev
npm run db:seed
npm run dev

License

MIT © TheRealOdinEYE

About

Full-stack website template for afro & African hair salons — AI chatbot, online booking, Telegram human handoff, Google Calendar sync, and admin panel. Built with Next.js 14, Prisma, Docker. Live demo: constancehairart.com

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors