"Architektura... W Nowym Εwietle"
Profesjonalna strona konceptualna dla luksusowej agencji nieruchomoΕci premium, ΕΔ czΔ ca wizualnΔ elegancjΔ z wydajnoΕciΔ na poziomie production.
Demo Β· Dokumentacja Β· Deployment
- O Projekcie
- Kluczowe Funkcje
- Stack Technologiczny
- Szybki Start
- Struktura Projektu
- WydajnoΕΔ
- BezpieczeΕstwo
- Dokumentacja
- Deployment
- Contributing
- Licencja
Neon Estate to zaawansowany koncept strony internetowej dla agencji nieruchomoΕci luksusowych, zaprojektowany z naciskiem na:
- Performance First: Optymalizacja wydajnoΕci (PageSpeed 90+)
- Visual Excellence: Minimalistyczny design w stylu "Quiet Luxury"
- AI Integration: Generator konceptΓ³w architektonicznych powered by Google Gemini AI
- Production Ready: PeΕna architektura backend (Node.js + Express) gotowa do wdroΕΌenia
Projekt demonstruje nowoczesne podejΕcie do web developmentu, ΕΔ czΔ c:
- Responsive Images (AVIF/WebP/JPEG) z automatycznΔ optymalizacjΔ
- Lazy Loading z IntersectionObserver API
- BezpiecznΔ integracjΔ AI z rate limitingiem i XSS protection
- SEO-friendly strukturΔ z Schema.org markup
- β¨ AI Atelier - Generator konceptΓ³w architektonicznych z wykorzystaniem Gemini API
- π¬ Cinematic UX - PΕynne animacje (Intersection Observer, Progressive Reveal)
- π¨ Minimalist Luxury Design - Czarny gradient, zΕote akcenty, neonowe linie
- π±οΈ Custom Cursor - Interaktywny kursor "Diamond Precision" z animacjami
- π± Mobile First - PeΕna responsywnoΕΔ z dedykowanym menu mobilnym
- πΌοΈ Responsive Images - AVIF + WebP + JPEG fallback (70-94% kompresja)
- β‘ Lazy Loading - Inteligentne Εadowanie obrazΓ³w i animacji
- βΏ Accessibility - ARIA labels, semantic HTML, skip links
- π€ Google Gemini AI - Generowanie konceptΓ³w architektonicznych
- π Security - DOMPurify XSS protection, Helmet, CORS, Rate Limiting
- π Input Validation - Frontend + backend sanitization
- βοΈ Environment Config - Centralna konfiguracja z .env
- π Deployment Ready - Gotowy do wdroΕΌenia na Vercel/Heroku/Railway
- CSS Minification (29% redukcja rozmiaru)
- Image Optimization (84 warianty, 4 rozmiary Γ 3 formaty)
- Git Hooks dla automatycznej minifikacji
- DNS prefetch i preconnect dla external resources
HTML5 - Semantic markup, ARIA accessibility
CSS3 - Variables, Grid, Flexbox, Animations
JavaScript ES6+ - Vanilla JS, Async/Await, Modules
Node.js v18+ - Runtime environment
Express.js - Web framework
Google Gemini AI - AI concept generation
DOMPurify - XSS protection
Helmet - Security headers
Express Rate Limit - API rate limiting
Sharp - Image optimization (AVIF, WebP)
Git Hooks - Pre-commit CSS minification
npm Scripts - Build automation
Environment Config - .env management
Schema.org JSON-LD - Structured data
Open Graph - Social media optimization
Twitter Cards - Rich social previews
Sitemap.xml - Search engine indexing
robots.txt - Crawler configuration
- Node.js v18.0.0 lub wyΕΌszy
- npm (doΕΔ czony do Node.js)
- Git (opcjonalnie)
-
Sklonuj repozytorium
git clone https://github.com/DominDev/DominDev-Neon-Estate.git cd DominDev-Neon-Estate -
Zainstaluj zaleΕΌnoΕci
npm install
-
Skonfiguruj environment (opcjonalnie, jeΕli uΕΌywasz AI Atelier)
cp .env.example .env
Edytuj
.envi dodaj swΓ³j Gemini API Key:GEMINI_API_KEY=your_api_key_here NODE_ENV=development PORT=3000 ALLOWED_ORIGINS=http://localhost:5501
-
Uruchom backend (opcjonalnie, dla AI Atelier)
npm run dev
Backend bΔdzie dostΔpny na:
http://localhost:3000 -
Uruchom frontend
- OtwΓ³rz
index.htmlw przeglΔ darce, lub - UΕΌyj Live Server (VS Code extension)
- Lub uruchom lokalny serwer HTTP:
npx http-server -p 5501
- OtwΓ³rz
DominDev-Neon-Estate/
β
βββ π api/ # Backend Node.js + Express
β βββ config/
β β βββ env.js # Environment configuration
β βββ middleware/
β β βββ error-handler.js # Global error handling
β β βββ rate-limiter.js # Rate limiting (10 req/15min)
β β βββ validator.js # Input validation
β βββ routes/
β β βββ ai-atelier.js # AI generation endpoints
β βββ utils/
β β βββ http-client.js # Fetch with timeout
β β βββ sanitizer.js # XSS protection
β βββ server.js # Main server file
β βββ README.md # Backend docs
β
βββ π assets/
β βββ css/
β β βββ style.css # Main stylesheet (69 KB)
β β βββ style.min.css # Minified (49 KB) [-29%]
β βββ js/
β β βββ main.js # Main logic (974 lines)
β βββ images/
β β βββ originals/ # Source images (ignored in git)
β β βββ *-400.avif/webp/jpg # Mobile optimized
β β βββ *-800.avif/webp/jpg # Tablet optimized
β β βββ *-1200.avif/webp/jpg # Desktop optimized
β β βββ *-1600.avif/webp/jpg # HiDPI optimized
β βββ fonts/ # (Optional custom fonts)
β
βββ π _scripts/ # Development scripts
β βββ optimize-images.js # Sharp image optimization
β βββ minify-css.js # CSS minification
β βββ auto-minify-css.js # Watch mode minification
β βββ setup-git-hooks.js # Git pre-commit hooks
β βββ snapshot-structure.ps1 # Project structure snapshot
β βββ snapshot-code.ps1 # Code backup snapshot
β βββ README.md # Scripts documentation
β
βββ π _docs/ # Technical documentation
β βββ technical-documentation.md # Main tech docs
β βββ guide-mcp-setup.md # MCP setup guide
β βββ guide-seo-configuration.md # SEO customization
β βββ report-image-optimization.md # Image optimization report
β βββ changelog-seo.md # SEO changes log
β βββ notes-manual-tasks.md # Manual task checklist
β
βββ π index.html # Main HTML file
βββ π robots.txt # SEO crawler rules
βββ π sitemap.xml # SEO sitemap
βββ π package.json # Dependencies & scripts
βββ π .env.example # Environment template
βββ π .gitignore # Git ignore rules
βββ π vercel.json # Vercel deployment config
βββ π README.md # This file
| Image | Original | AVIF | WebP | JPEG | OszczΔdnoΕΔ |
|---|---|---|---|---|---|
| about-bg.jpg | 214.6 KB | 91% | 93% | 92% | ~195 KB |
| portfolio-penthouse.jpg | 108.3 KB | 70% | 78% | 78% | ~85 KB |
| og-image.png | 53.6 KB | 94% | 93% | 91% | ~49 KB |
Total: 84 image variants wygenerowanych (7 obrazΓ³w Γ 4 rozmiary Γ 3 formaty) Total savings: ~3.6 MB dla wszystkich obrazΓ³w
Original: 69.54 KB (style.css)
Minified: 49.40 KB (style.min.css)
Saved: 20.14 KB (-29.15%)
- Performance: 90+
- Accessibility: 95+
- Best Practices: 90+
- SEO: 100
β XSS Protection
- DOMPurify sanitization (backend)
- Secure innerHTML usage
- Content Security Policy headers (Helmet)
β CSRF Protection
- Origin validation
- CORS configuration
- Rate limiting
β Input Validation
- Frontend validation
- Backend sanitization
- SQL injection prevention
β API Security
- Environment variables dla API keys
- Rate limiting (10 requests/15min)
- Timeout handling (45s)
- AbortController dla request cancellation
β HTTP Security Headers (Helmet)
- X-Content-Type-Options: nosniff
- Referrer-Policy: strict-origin-when-cross-origin
- Permissions-Policy
- Technical Documentation - Kompletna dokumentacja techniczna
- MCP Setup Guide - Przewodnik po Model Context Protocol
- SEO Configuration - Konfiguracja SEO (800+ linii)
- Image Optimization Report - Raport optymalizacji obrazΓ³w
- Scripts README - Dokumentacja skryptΓ³w developerskich
# Development
npm run dev # Start backend z auto-reload
# Testing (MCP)
npm test # Wszystkie testy MCP
npm run test:browser # Browser MCP - basic test
npm run test:browser:seo # SEO audit test
npm run test:browser:perf # Performance test
npm run test:combined:full # Complete audit
# Production
npm start # Start backend (production mode)# Image Optimization
node _scripts/optimize-images.js
# CSS Minification
node _scripts/minify-css.js # One-time minify
node _scripts/auto-minify-css.js --watch # Watch mode
# Git Hooks
node _scripts/setup-git-hooks.js # Install pre-commit hooks
node _scripts/setup-git-hooks.js uninstall # Remove hooksVercel / Netlify / GitHub Pages
# Build nie jest wymagany - pure static files
# Po prostu deploy caΕego projektu
# Opcjonalnie: minifikacja CSS przed deploymentem
node _scripts/minify-css.jsVercel (Recommended)
npm install -g vercel
vercel login
vercel
# Add environment variables w Vercel dashboard:
# GEMINI_API_KEY=your_key
# NODE_ENV=production
# ALLOWED_ORIGINS=https://your-domain.comHeroku
heroku create neon-estate-api
heroku config:set GEMINI_API_KEY=your_key
heroku config:set NODE_ENV=production
git push heroku mainRailway.app
# Deploy przez Railway dashboard
# 1. Connect GitHub repo
# 2. Add environment variables
# 3. Deploy automaticallyVPS (Node.js)
# Install PM2
npm install -g pm2
# Start server
pm2 start api/server.js --name neon-estate
# Setup auto-restart
pm2 startup
pm2 saveπ SzczegΓ³Εowa dokumentacja deployment: Zobacz api/README.md
Contributions, issues, and feature requests are welcome!
- Fork projektu
- StwΓ³rz feature branch (
git checkout -b feature/AmazingFeature) - Commit zmian (
git commit -m 'Add some AmazingFeature') - Push do brancha (
git push origin feature/AmazingFeature) - OtwΓ³rz Pull Request
- ES Modules - UΕΌywaj
import/export(nierequire()) - Naming Convention - camelCase dla zmiennych/funkcji, PascalCase dla klas
- Comments - JSDoc dla funkcji publicznych
- Formatting - Prettier/ESLint config (TODO: dodaΔ)
ISC License Β© 2025 Neon Estate Concept
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
Concept & Development by DominDev
- Senior Fullstack Developer & UI/UX Designer
- Focus: High-Performance Web & Brand Identity
- Portfolio: domindev.com
- Google Gemini AI - AI concept generation
- Sharp - Image optimization library
- Font Awesome - Icon library
- Google Fonts - Playfair Display & Manrope fonts
- Unsplash - High-quality stock photography
β Star this repo if you find it useful!
Made with β€οΈ and β by DominDev