Files
SatsFaucet/frontend/vite.config.ts
Michaël 5b516f02cb Production-ready overhaul: backend fixes, claim flow polish, SEO, mobile, nginx
Backend:
- Fix activity score (followersCount check), NIP-98 URL proto, wallet balance guard
- Add payment_hash to confirm response, spentTodaySats to stats
- Add idx_claims_ip_hash; security headers, graceful shutdown, periodic nonce cleanup

Frontend:
- Remove 8 legacy components; polish wizard (rules summary, profile card, confetti, share)
- Stats budget bar uses spentTodaySats; ErrorBoundary with reload

SEO & production:
- Full meta/OG/Twitter, favicon, JSON-LD, robots.txt, sitemap.xml
- Mobile CSS fixes; nginx static dist + gzip + cache + security headers
- Vite manualChunks; aria-labels, dynamic page titles

Made-with: Cursor
2026-02-27 16:29:37 -03:00

38 lines
1.1 KiB
TypeScript

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
export default defineConfig({
plugins: [react()],
build: {
sourcemap: false,
rollupOptions: {
output: {
manualChunks: {
vendor: ["react", "react-dom", "react-router-dom"],
nostr: ["nostr-tools"],
ui: ["framer-motion", "qrcode", "canvas-confetti"],
},
},
},
},
preview: {
allowedHosts: ["faucet.lnpulse.app"],
},
server: {
port: 5173,
proxy: {
"/api": {
target: "http://localhost:3001",
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, ""),
},
"/claim": { target: "http://localhost:3001", changeOrigin: true },
"/auth": { target: "http://localhost:3001", changeOrigin: true },
"/user": { target: "http://localhost:3001", changeOrigin: true },
"/config": { target: "http://localhost:3001", changeOrigin: true },
"/stats": { target: "http://localhost:3001", changeOrigin: true },
"/deposit": { target: "http://localhost:3001", changeOrigin: true },
},
},
});