Inserisci le credenziali Supabase per attivare il database. Le salvi una volta sola — poi il sito funziona su qualsiasi dispositivo.
1
Crea account Supabase
Vai su supabase.com → Sign up gratis → New Project. Metti il nome "simparts" e una password sicura. Aspetta ~2 minuti che si avvii.
2
Crea le tabelle
Nel tuo progetto Supabase → clicca SQL Editor → New Query → incolla questo codice → clicca Run:
-- =====================================================
-- SIMPARTS — Setup completo Supabase
-- Copia tutto e incolla in: Supabase → SQL Editor → Run
-- =====================================================
-- ── PRODOTTI ──
create table if not exists products (
id bigint primary key generated always as identity,
name text not null,
description text,
price text,
stock text default 'av', -- 'av' | 'lw' | 'ot'
badge text, -- 'nuovo' | 'top' | 'limited'
photos jsonb default '[]',
print_notes text,
production_cost numeric default 0,
related_products jsonb default '[]',
links jsonb default '[]',
orders_count int default 0,
created_at timestamptz default now()
);
-- ── ORDINI ──
create table if not exists orders (
id bigint primary key generated always as identity,
customer_name text,
customer_phone text,
items jsonb,
total numeric,
note text,
order_number text,
status text default 'in-sospeso', -- 'in-sospeso' | 'confermato' | 'in-preparazione' | 'spedito' | 'consegnato'
shipping_status text default 'non-spedito',
tracking_number text,
carrier text,
created_at timestamptz default now()
);
-- ── RECENSIONI ──
create table if not exists reviews (
id bigint primary key generated always as identity,
product_id bigint,
product_name text,
customer_name text,
customer_token text, -- token anonimo per limitare 1 rec per cliente per prodotto
rating int check (rating between 1 and 5),
content text,
approved boolean default false,
created_at timestamptz default now()
);
-- Indice univoco: 1 sola recensione per token+prodotto
create unique index if not exists reviews_unique_token
on reviews (customer_token, product_id);
-- ── SPESE ──
create table if not exists expenses (
id bigint primary key generated always as identity,
description text,
amount numeric,
category text, -- 'filamento' | 'attrezzatura' | 'spedizione' | 'altro'
date date default current_date,
created_at timestamptz default now()
);
-- ── VENDITE ──
create table if not exists sales (
id bigint primary key generated always as identity,
product_name text,
amount numeric,
note text,
date date default current_date,
created_at timestamptz default now()
);
-- ── LISTA D'ATTESA ──
create table if not exists waitlist (
id bigint primary key generated always as identity,
product_id bigint,
product_name text,
email text not null,
created_at timestamptz default now()
);
-- ── POSTAZIONI CLIENTI ──
create table if not exists customer_setups (
id bigint primary key generated always as identity,
customer_name text not null,
location text, -- es. 'Milano', 'Roma'
description text,
photo_url text, -- base64 o URL
approved boolean default false,
products_used jsonb default '[]', -- array di nomi prodotti usati
created_at timestamptz default now()
);
-- ── ROW LEVEL SECURITY ──
alter table products enable row level security;
alter table orders enable row level security;
alter table reviews enable row level security;
alter table expenses enable row level security;
alter table sales enable row level security;
alter table waitlist enable row level security;
alter table customer_setups enable row level security;
-- ── POLICY: accesso pubblico con chiave anon ──
-- (sicuro perché la chiave anon è read/write ma non permette drop/alter)
drop policy if exists "public access" on products;
drop policy if exists "public access" on orders;
drop policy if exists "public access" on reviews;
drop policy if exists "public access" on expenses;
drop policy if exists "public access" on sales;
drop policy if exists "public access" on waitlist;
drop policy if exists "public access" on customer_setups;
create policy "public access" on products for all using (true) with check (true);
create policy "public access" on orders for all using (true) with check (true);
create policy "public access" on reviews for all using (true) with check (true);
create policy "public access" on expenses for all using (true) with check (true);
create policy "public access" on sales for all using (true) with check (true);
create policy "public access" on waitlist for all using (true) with check (true);
create policy "public access" on customer_setups for all using (true) with check (true);
-- =====================================================
-- SE HAI GIA' ESEGUITO IL VECCHIO SQL, aggiungi solo
-- le colonne mancanti con questi comandi:
-- =====================================================
-- alter table orders add column if not exists shipping_status text default 'non-spedito';
-- alter table orders add column if not exists order_number text;
-- alter table orders add column if not exists internal_notes text;
-- alter table orders add column if not exists outcome text;
-- alter table orders add column if not exists shipping_cost numeric default 0;
-- alter table products add column if not exists related_products jsonb default '[]';
-- alter table orders add column if not exists tracking_number text;
-- alter table orders add column if not exists carrier text;
-- alter table products add column if not exists production_cost numeric default 0;
-- alter table orders add column if not exists orders_count int default 0;
-- alter table reviews add column if not exists customer_token text;
-- alter table products add column if not exists orders_count int default 0;
-- create unique index if not exists reviews_unique_token on reviews (customer_token, product_id);
-- create table if not exists customer_setups ( ... vedi sopra ... );
-- alter table customer_setups enable row level security;
-- create policy "public access" on customer_setups for all using (true) with check (true);
3
Inserisci le credenziali
Nel progetto Supabase → Project Settings → API. Copia Project URL e anon public key.
🔥
Accessori Stampati in 3D
Componenti Fatti per Correre
Bracket, pulsantiere, supporti e accessori stampati in 3D per la tua postazione sim racing — progettati per chi prende il racing sul serio.
Verrà pubblicata dopo approvazione. Solo 1 recensione per prodotto.
🏎 Setup dei Clienti
La community SimParts — clienti che hanno condiviso la loro postazione con i nostri accessori.
📸 Condividi il tuo setup
Hai acquistato un nostro prodotto? Mandaci la foto della tua postazione e la pubblichiamo qui!
📷Clicca per caricare la foto
Cambia foto
Verrà pubblicato dopo approvazione.
🏎️
SimParts
Accessori stampati in 3D per il sim racing
La mia storia
Appassionato di sim racing, ho iniziato a stampare in 3D i miei accessori perché non trovavo nulla sul mercato che mi soddisfacesse. Ora condivido le mie creazioni con altri piloti virtuali.
0
Prodotti
0+
Ordini
⭐
Media voti
🖨️ Cosa uso per stampare
PLA, PLA+, PETG — stampante FDM ad alta precisione con risoluzione 0.1mm. Ogni pezzo viene testato prima di essere spedito.
Inserisci il numero d'ordine che ti è stato comunicato per vedere lo stato della tua spedizione.
Gestione Prodotti
Caricamento…
📣 Banner Promo
Attiva il banner
Lascia vuoto per no countdown
Anteprima
🔥 Il tuo messaggio apparirà qui
Versione sito aggiornata?
🧮 Calcolatore Prezzo
Materiale rapido
Infill rapido
Costo totale
—
Prezzo minimo
—
Prezzo consigliato
—
Guadagno netto
—
📦 Assegna a prodotto esistente
Configurazioni salvate
Ordini
Caricamento…
🔍
Finanze
Tieni traccia di vendite e spese
💾 Backup Automatico
Controllo...
Preparazione...
⏰ Backup automatico ogni 2 giorni quando apri il pannello Finanze come admin.
Il file JSON contiene tutti i dati: prodotti, ordini, vendite, spese, recensioni.
📧 Per ricevere il backup via email inserisci la tua email:
📊 Recap Mensile
Seleziona un mese
Vendite ultimi 6 mesi (€)
📊 Redditività Prodotti
Vendite
Spese
Potrebbe interessarti
Recensioni
Lascia una recensione
Le recensioni vengono approvate prima di essere pubblicate. Solo 1 per prodotto.
Aggiungi Prodotto
✕
📷Aggiungi
Prima foto = copertina. ✕ per rimuovere.
Filamento + elettricità + imballaggio. Usato per calcolare il tuo margine reale in Finanze.
Caricamento…
Seleziona fino a 4 prodotti da mostrare come suggeriti.
💡 Solo tu puoi vedere questa sezione.
📦 Riepilogo Ordine
✕
📦 Spedizione: costo e modalità verranno concordati via WhatsApp dopo l'ordine.
🔐 Accesso Admin
✕
🖥 Vista & Impostazioni
✕
Vista attiva:👤 Cliente
👤
Cliente
Vedi il sito come lo vede un cliente — shop, recensioni, ordini
🔐
Admin
Gestisci prodotti, ordini, finanze e impostazioni
🔑 Cambia password
Admin
La password admin si usa per accedere alla vista Modifica, Ordini e Finanze.
Verrà pubblicata dopo approvazione. Solo 1 recensione per prodotto.
🏎 Setup dei Clienti
La community SimParts — clienti che hanno condiviso la loro postazione con i nostri accessori.
📸 Condividi il tuo setup
Hai acquistato un nostro prodotto? Mandaci la foto della tua postazione e la pubblichiamo qui!
📷Clicca per caricare la foto
Cambia foto
Verrà pubblicato dopo approvazione.
🏎️
SimParts
Accessori stampati in 3D per il sim racing
La mia storia
Appassionato di sim racing, ho iniziato a stampare in 3D i miei accessori perché non trovavo nulla sul mercato che mi soddisfacesse. Ora condivido le mie creazioni con altri piloti virtuali.
0
Prodotti
0+
Ordini
⭐
Media voti
🖨️ Cosa uso per stampare
PLA, PLA+, PETG — stampante FDM ad alta precisione con risoluzione 0.1mm. Ogni pezzo viene testato prima di essere spedito.
Inserisci il numero d'ordine che ti è stato comunicato per vedere lo stato della tua spedizione.
Gestione Prodotti
Caricamento…
📣 Banner Promo
Attiva il banner
Lascia vuoto per no countdown
Anteprima
🔥 Il tuo messaggio apparirà qui
Versione sito aggiornata?
🧮 Calcolatore Prezzo
Materiale rapido
Infill rapido
Costo totale
—
Prezzo minimo
—
Prezzo consigliato
—
Guadagno netto
—
📦 Assegna a prodotto esistente
Configurazioni salvate
Ordini
Caricamento…
🔍
Finanze
Tieni traccia di vendite e spese
💾 Backup Automatico
Controllo...
Preparazione...
⏰ Backup automatico ogni 2 giorni quando apri il pannello Finanze come admin.
Il file JSON contiene tutti i dati: prodotti, ordini, vendite, spese, recensioni.
📧 Per ricevere il backup via email inserisci la tua email:
📊 Recap Mensile
Seleziona un mese
Vendite ultimi 6 mesi (€)
📊 Redditività Prodotti
Vendite
Spese
Potrebbe interessarti
Recensioni
Lascia una recensione
Le recensioni vengono approvate prima di essere pubblicate. Solo 1 per prodotto.
Aggiungi Prodotto
✕
📷Aggiungi
Prima foto = copertina. ✕ per rimuovere.
Filamento + elettricità + imballaggio. Usato per calcolare il tuo margine reale in Finanze.
Caricamento…
Seleziona fino a 4 prodotti da mostrare come suggeriti.
💡 Solo tu puoi vedere questa sezione.
📦 Riepilogo Ordine
✕
📦 Spedizione: costo e modalità verranno concordati via WhatsApp dopo l'ordine.
🔐 Accesso Admin
✕
🖥 Vista & Impostazioni
✕
Vista attiva:👤 Cliente
👤
Cliente
Vedi il sito come lo vede un cliente — shop, recensioni, ordini
🔐
Admin
Gestisci prodotti, ordini, finanze e impostazioni
🔑 Cambia password
Admin
La password admin si usa per accedere alla vista Modifica, Ordini e Finanze.