98c17d69bc1ba6bd74e917ba6c83e83cfb7d5a8d
Ghid Biblic - Biblical Guide Web App
O aplicație web completă pentru studiul Bibliei cu capabilități de chat AI și funcții în timp real, implementată conform planului de implementare complet.
🚀 Caracteristici Complete
📖 Cititor Biblic Avansat
- Navigare prin Scripturile Sfinte cu interfață responsive
- Sistem de marcare a versetelor cu culori personalizabile
- Istoric de lectură cu sincronizare automată
- Cache inteligent pentru performanță optimă
🤖 Chat AI Specializat
- Asistent AI antrenat pentru întrebări biblice și teologice
- Integrare cu Azure OpenAI și suport pentru Ollama
- Răspunsuri în română cu referințe scripturale
- Salvarea automată a conversațiilor pentru utilizatorii autentificați
🙏 Perete de Rugăciuni în Timp Real
- Împărtășirea cerilor de rugăciune cu comunitatea
- Sistem de rugăciune cu counter în timp real
- Opțiuni pentru postări anonime sau cu nume
- Interfață optimistă cu actualizări automate
🔍 Căutare Avansată cu Full-Text Search
- Motor de căutare cu indexare GIN PostgreSQL
- Căutare prin similitudine și ranking inteligent
- Rezultate optimizate cu cache și performanță ridicată
- Suport pentru căutări complexe și expresii regulate
🔐 Sistem de Securitate Robust
- Autentificare JWT cu validare avansată
- Rate limiting per endpoint și utilizator
- Middleware de securitate cu protecție CSRF/XSS
- Validare de intrare cu scheme Zod
📊 Performance și Monitoring
- Cache layer cu tabele PostgreSQL UNLOGGED
- Scripturi de optimizare și mentenanță automată
- Monitoring performanță cu rapoarte detaliate
- Indexuri optimizate pentru căutări rapide
🧪 Testing Framework
- Suite de teste cu Jest și React Testing Library
- Teste unitare pentru API și componente
- Coverage reports și CI/CD ready
- Mock-uri pentru toate serviciile externe
Tehnologii Utilizate
- Frontend: Next.js 14 (App Router), TypeScript, Tailwind CSS, Zustand
- Backend: Next.js API Routes, PostgreSQL cu extensii
- Database: PostgreSQL 16 cu pgvector, pg_trgm, full-text search
- AI: Azure OpenAI API cu fallback la Ollama
- Security: JWT, bcrypt, rate limiting, input validation
- Testing: Jest, React Testing Library, TypeScript
- DevOps: Docker, Docker Compose, Nginx, SSL support
- Performance: Caching, indexing, optimization scripts
Instalare Rapidă
Folosind Docker (Recomandat)
- Clonează repository-ul:
git clone <repository-url>
cd ghid-biblic
- Copiază fișierul de configurație:
cp .env.example .env.local
- Editează
.env.localcu valorile tale:
DATABASE_URL=postgresql://bible_admin:password@localhost:5432/bible_chat
DB_PASSWORD=password
AZURE_OPENAI_KEY=your-azure-key
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com
AZURE_OPENAI_DEPLOYMENT=gpt-4
JWT_SECRET=your-secure-jwt-secret
NEXTAUTH_SECRET=your-secure-nextauth-secret
- Pornește aplicația:
docker-compose up -d
- Rulează migrațiile și importă datele biblice:
docker-compose exec app npx prisma migrate deploy
docker-compose exec app npm run import-bible
- Accesează aplicația la: http://localhost:3000
Instalare Manuală
- Instalează dependențele:
npm install
-
Configurează baza de date PostgreSQL și actualizează
.env.local -
Rulează migrațiile:
npx prisma migrate deploy
npx prisma generate
- Importă datele biblice:
npm run import-bible
- Pornește serverul de dezvoltare:
npm run dev
Scripturi Disponibile
npm run dev- Pornește serverul de dezvoltarenpm run build- Construiește aplicația pentru producțienpm run start- Pornește aplicația în modul producțienpm run lint- Verifică codul cu ESLintnpm run import-bible- Importă datele biblice în baza de date
Structura Proiectului
├── app/ # Next.js App Router
│ ├── api/ # API Routes
│ ├── dashboard/ # Dashboard principal
│ └── globals.css # Stiluri globale
├── components/ # Componente React
│ ├── auth/ # Componente de autentificare
│ ├── bible/ # Componente pentru citirea Bibliei
│ ├── chat/ # Interfața de chat AI
│ ├── prayer/ # Componente pentru rugăciuni
│ └── ui/ # Componente UI generale
├── lib/ # Utilitare și configurații
│ ├── auth/ # Sistem de autentificare
│ ├── ai/ # Integrare AI
│ ├── store/ # State management
│ └── db.ts # Conexiunea la baza de date
├── prisma/ # Schema și migrații Prisma
├── scripts/ # Scripturi de utilitate
└── docker/ # Configurații Docker
Configurare AI
Azure OpenAI
- Creează o resursă Azure OpenAI
- Obține cheia API și endpoint-ul
- Implementează un model GPT-4
- Actualizează variabilele de mediu
Ollama (Opțional)
Pentru rularea locală de modele AI:
- Instalează Ollama
- Descarcă un model pentru embeddings:
ollama pull nomic-embed-text - Actualizează
OLLAMA_API_URLîn.env.local
Deployment în Producție
Folosind Docker
- Copiază
.env.examplela.env.productionși configurează-l - Construiește și pornește serviciile:
docker-compose -f docker-compose.prod.yml up -d
Configurare SSL
Pentru HTTPS folosind Let's Encrypt:
# Instalează Certbot
sudo apt install certbot python3-certbot-nginx
# Obține certificatul SSL
sudo certbot --nginx -d yourdomain.com
Monitorizare
- Health Check:
/api/health - Logs:
docker-compose logs -f app - Metrici: Implementate prin endpoint-uri dedicate
Contribuții
- Fork repository-ul
- Creează o ramură pentru feature:
git checkout -b feature-nou - Commit schimbările:
git commit -m 'Adaugă feature nou' - Push pe ramură:
git push origin feature-nou - Deschide un Pull Request
Licență
Acest proiect este licențiat sub MIT License.
Suport
Pentru întrebări sau probleme, deschide un issue pe GitHub.
Construit cu ❤️ pentru comunitatea creștină
Description
Languages
TypeScript
93.7%
Python
2.5%
JavaScript
2.2%
Shell
0.7%
PLpgSQL
0.5%
Other
0.3%