Una moderna webapp per gestire e tracciare tutti i tuoi abbonamenti online con AI insights.
- Caratteristiche
- Stack Tecnologico
- Installazione Rapida
- Configurazione
- Database Setup
- Funzionalità
- Deployment
- Troubleshooting
- ✅ Dashboard Completa: Visualizza tutti gli abbonamenti con filtri e ordinamento
- ✅ Smart Onboarding: Ricerca servizi popolari e creazione automatica subscription
- ✅ Analytics Avanzate: Grafici e statistiche spese mensili/annuali
- ✅ Multi-Valuta: Supporto per 15+ valute con conversione automatica
- ✅ AI Insights: Analisi intelligente delle spese con OpenAI GPT-4
- ✅ Lista/Griglia: Toggle tra visualizzazione lista e griglia
- ✅ Ricerca Dinamica: Cerca tra nome, categoria, note ed email
- ✅ Supporto Crediti: Traccia servizi a crediti (Runway, Midjourney, etc.)
- ✅ Multi-Account: Associa email diverse a diversi abbonamenti
- ✅ Dark/Light Mode: Toggle tema scuro/chiaro
- ✅ Multilingua: Italiano, Inglese, Spagnolo, Francese, Tedesco
- ✅ Responsive: Design mobile-first ottimizzato
- Next.js 14: App Router con Server Components
- TypeScript: Type-safe con strict mode
- Supabase: PostgreSQL + Auth + RLS
- Tailwind CSS + shadcn/ui: UI Components
- Zustand: State management
- OpenAI: GPT-4o-mini per AI insights
- Vercel Analytics: Web analytics
git clone https://github.com/gignus79/Subscription-Tracker-App.git
cd Subscription-Tracker-Appnpm installCrea .env.local:
# Supabase (OBBLIGATORIO)
NEXT_PUBLIC_SUPABASE_URL=https://xxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJhbG...
SUPABASE_SERVICE_ROLE_KEY=eyJhbG...
# OpenAI (OBBLIGATORIO per AI Insights)
OPENAI_API_KEY=sk-proj-xxx...
# App URL
NEXT_PUBLIC_APP_URL=http://localhost:3000- Vai su Supabase Dashboard
- Crea nuovo progetto
- Vai su SQL Editor
- Esegui il contenuto di
supabase/schema.sql - Esegui le migrations in
supabase/migrations/(in ordine)
npm run dev- Vai su supabase.com
- New Project → scegli nome e region
- Attendi creazione (~2 min)
Settings → API:
Project URL→NEXT_PUBLIC_SUPABASE_URLanon public→NEXT_PUBLIC_SUPABASE_ANON_KEYservice_role→SUPABASE_SERVICE_ROLE_KEY
Authentication → Providers:
- Abilita Email provider
- (Opzionale) Disabilita "Confirm email" per test
- Vai su platform.openai.com/api-keys
- Crea nuova secret key
- Copia in
OPENAI_API_KEY
Costi: ~$0.50 per 1000 richieste (GPT-4o-mini)
-- Esegui nel SQL Editor di Supabase
-- Copia il contenuto di supabase/schema.sqlLo schema crea:
profiles: Profili utentesubscriptions: Abbonamenticategories: Categorie serviziservices: 80+ servizi predefiniti
Esegui in ordine:
add_account_email.sql- Supporto email multipleadd_credits_support.sql- Crediti e rinnoviadd_default_currency.sql- Valuta defaultadd_dev_services.sql- Servizi sviluppoensure_profiles_table.sql- Verifica profiles
-- Controlla tabelle create
SELECT table_name FROM information_schema.tables
WHERE table_schema = 'public';
-- Test RLS
SELECT * FROM subscriptions WHERE user_id = auth.uid();- Vista griglia con glassmorphism cards
- Vista lista compatta
- Filtri per categoria e stato
- Ordinamento multiplo
- Ricerca real-time
- Dashboard → "Ottieni Insights AI"
- Analisi automatica delle tue spese
- Suggerimenti personalizzati
- Identificazione duplicati
- Raccomandazioni risparmio
Powered by OpenAI GPT-4o-mini.
Valute supportate: EUR, USD, GBP, CHF, CAD, AUD, JPY, CNY, INR, BRL, MXN, SEK, NOK, DKK, PLN
Conversione automatica nelle statistiche.
Database con 80+ servizi:
- Streaming (Netflix, Disney+, ...)
- Produttività (Notion, Slack, ...)
- Cloud (Dropbox, Google Drive, ...)
- Sviluppo (GitHub, Vercel, ...)
- Design (Adobe, Figma, ...)
- AI (ChatGPT, Midjourney, ...)
git add .
git commit -m "Deploy"
git push origin main- vercel.com → New Project
- Importa da GitHub
- Aggiungi Environment Variables:
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEYOPENAI_API_KEY
- Deploy!
Settings → Domains → Add Domain
Vercel Analytics è già configurato in app/layout.tsx.
Soluzione: Esegui tutte le migrations nel SQL Editor
Soluzione: Verifica RLS policies abilitate
ALTER TABLE subscriptions ENABLE ROW LEVEL SECURITY;Soluzione:
- Verifica
OPENAI_API_KEYin.env.local - Riavvia server:
npm run dev
Soluzione: Logout/Login, verifica cookies abilitati
Soluzione: Clearing cache browser, verifica z-index
subscription-tracker/
├── app/ # Next.js App Router
│ ├── api/ # API Routes
│ │ ├── ai-insights/ # OpenAI
│ │ └── auth/ # Supabase auth
│ ├── dashboard/ # Main app
│ ├── globals.css
│ ├── layout.tsx
│ └── page.tsx # Landing
├── components/ # React components
│ ├── ui/ # shadcn/ui
│ ├── add-subscription-dialog.tsx
│ ├── ai-insights.tsx
│ └── ...
├── lib/ # Utilities
│ ├── store/ # Zustand
│ ├── supabase/ # Clients
│ └── utils/ # Helpers
├── supabase/ # Database
│ ├── schema.sql
│ └── migrations/
├── types/ # TypeScript
└── .env.local # Config (create this!)
- Fork il repository
- Crea branch:
git checkout -b feature/Feature - Commit:
git commit -m 'Add Feature' - Push:
git push origin feature/Feature - Pull Request
MIT License - vedi LICENSE
Sviluppato da Giorgio Lovecchio
Stack: Next.js • Supabase • Tailwind • OpenAI • Vercel
- ✨ AI Insights con OpenAI GPT-4
- ✨ Multi-valuta con conversione
- ✨ Vista lista/griglia
- ✨ Ricerca dinamica
- ✨ Vercel Analytics
- 🐛 Bug fixes e performance
- 🎉 Release iniziale
Made with ☕ in Italy 🇮🇹
Ultimo aggiornamento: 18 novembre 2025