Modern, többnyelvű helyi turisztikai platformvezető rendszer eseménykezeléssel és térkép integrációval.
- Többnyelvű támogatás (Magyar, Angol, Német)
- Helyek (Places) kezelése - Kategóriák, címkék, ár sávok
- Események (Events) - Időzített események, pinned funkció
- Rich Text Editor - TipTap alapú WYSIWYG szerkesztő
- SEO optimalizáció - Dinamikus meta tagek, slugok
- Interaktív térkép - MapLibre GL alapú
- Drag-and-drop szűrők - Pozíció megőrzéssel
- Események lista - Real-time frissítések
- Reszponzív design - Mobil-optimalizált
- Modern UI - Inter font, gradiensek, árnyékok
- Role-based hozzáférés (superadmin, admin, editor, viewer)
- 2FA autentikáció - TOTP alapú
- Többbérlős (Multi-site) rendszer - Site Architecture dokumentáció
- Automatikus slug generálás
- Push értesítések - Web Push API
- SSR-ready - SEO meta tagek server-side
- PWA támogatás - Service Worker
- Real-time - React Query cache invalidation
- I18n - react-i18next
- Type-safe - 100% TypeScript
- React 19 - UI framework
- Vite 7 - Build tool
- TypeScript 5.9 - Type safety
- React Router 7 - Routing
- TanStack Query 5 - Server state management
- MapLibre GL - Maps
- TipTap - Rich text editor
- i18next - Internationalization
- NestJS 11 - Backend framework
- Prisma 7 - ORM
- PostgreSQL - Database
- Passport JWT - Authentication
- Web Push - Notifications
- Node.js 18+ - Runtime
- Node.js 18.x vagy újabb
- pnpm 10.x (javasolt package manager)
- PostgreSQL 14.x vagy újabb
- Git
git clone <repository-url>
cd hellolocalpnpm installHozd létre a .env fájlokat:
Backend (apps/api/.env):
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/hellolocal"
# JWT
JWT_SECRET="your-super-secret-jwt-key-change-this-in-production"
JWT_EXPIRES_IN="7d"
# Server
PORT=3002
FRONTEND_URL="http://localhost:5173"
# Web Push (opcionális)
VAPID_PUBLIC_KEY="your-vapid-public-key"
VAPID_PRIVATE_KEY="your-vapid-private-key"
VAPID_SUBJECT="mailto:your-email@example.com"Frontend (apps/web/.env):
VITE_API_URL=http://localhost:3002
VITE_VAPID_PUBLIC_KEY=your-vapid-public-keycd apps/api
pnpm prisma migrate dev
pnpm prisma db seedKét terminálban:
# Terminal 1 - Backend
pnpm run dev:api
# Terminal 2 - Frontend
pnpm run dev:webA frontend elérhető lesz: http://localhost:5173
A backend API elérhető lesz: http://localhost:3002
cd apps/api
pnpm run build
pnpm startcd apps/web
pnpm run build
pnpm preview # Production previewdocker-compose up -dEz elindítja:
- PostgreSQL adatbázist
- Backend API-t (port 3002)
- Frontend-et (port 5173)
# Backend
docker build -f apps/api/Dockerfile -t hellolocal-api .
docker run -p 3002:3002 --env-file apps/api/.env hellolocal-api
# Frontend
docker build -f apps/web/Dockerfile -t hellolocal-web .
docker run -p 5173:5173 hellolocal-webElőnyök:
- Ingyenes PostgreSQL adatbázis (90 nap után inaktív)
- Automatikus HTTPS
- GitHub integration
- Egyszerű setup
Lépések:
- Fork-old a repository-t
- Hozz létre egy új Web Service-t Render-en a backend-hez
- Hozz létre egy Static Site-ot a frontend-hez
- Hozz létre egy PostgreSQL adatbázist
- Állítsd be a környezeti változókat
| Platform | Ár | Előnyök | Hátrányok |
|---|---|---|---|
| Railway.app | $5/hó után ingyenes | Egyszerű, gyors | Ingyenes limit kicsi |
| Fly.io | $0-5/hó | Global edge, Docker | Bonyolultabb config |
| Vercel (Frontend) | Ingyenes | Nagyon gyors, CDN | Csak frontend |
| Heroku | $7/hó | Megbízható | Nincs ingyenes tier |
| VPS (Hetzner, DigitalOcean) | €4-5/hó | Teljes kontroll | Több setup munka |
A seed script létrehozza a következő felhasználókat:
- Superadmin:
superadmin@hellolocal.com/password123 - Admin:
admin@hellolocal.com/password123 - Editor:
editor@hellolocal.com/password123
# Unit tesztek (TODO)
pnpm test
# E2E tesztek (TODO)
pnpm test:e2ecurl -X POST http://localhost:3002/api/admin/maintenance/generate-missing-slugs \
-H "Authorization: Bearer YOUR_JWT_TOKEN"pg_dump -h localhost -U user -d hellolocal > backup.sqlProduction környezetben használd a Render.com vagy más szolgáltatás beépített log nézőjét.
- Fork-old a projektet
- Hozz létre egy feature branch-et (
git checkout -b feature/amazing-feature) - Commit-old a változásokat (
git commit -m 'feat: Add amazing feature') - Push-old a branch-et (
git push origin feature/amazing-feature) - Nyiss egy Pull Request-et
Proprietary License - All Rights Reserved. Lásd LICENSE fájlt
Lásd a GitHub Issues oldalt.
- Email: support@hellolocal.com
- Dokumentáció: docs/
- Issues: GitHub Issues
HelloLocal - Készítve ❤️ -vel