supabase-database

Karlito8888's avatarfrom Karlito8888

Gestion de la base de données Supabase pour MyGGV GPS. Utiliser pour les opérations SQL, migrations, tables et requêtes. NE PAS utiliser pour la documentation (utiliser archon-project).

⭐0stars🔀0forks📁View on GitHub🕐Updated Dec 19, 2025⬇️1downloads

When & Why to Use This Skill

This Claude skill provides comprehensive management for Supabase databases, specifically optimized for the MyGGV GPS project. It enables seamless execution of SQL queries, schema migrations, and database health monitoring. By integrating tools for security auditing, performance optimization, and automatic TypeScript type generation, it streamlines the backend development workflow and ensures data integrity for location-based services.

Use Cases

  • Executing complex SQL queries to manage and retrieve GPS location data and Points of Interest (POIs).
  • Automating database schema migrations, such as adding new columns or tables, with built-in safety checks.
  • Auditing database security and performance using automated advisors to ensure Row Level Security (RLS) and query efficiency.
  • Generating real-time TypeScript types from the database schema to maintain type safety across the full-stack application.
  • Monitoring database logs and project configurations to troubleshoot connectivity or execution issues.
namesupabase-database
descriptionGestion de la base de données Supabase pour MyGGV GPS. Utiliser pour les opérations SQL, migrations, tables et requêtes. NE PAS utiliser pour la documentation (utiliser archon-project).

Supabase Database - MyGGV GPS

Objectif

Gérer la base de données Supabase du projet MyGGV GPS : locations (blocs), POIs, et données de navigation.

Périmètre

Inclus

  • Exécution de requêtes SQL (execute_sql)
  • Création et application de migrations (apply_migration)
  • Listing des tables et extensions
  • Vérification des advisors (sécurité, performance)
  • Consultation des logs
  • Génération des types TypeScript

Exclus

  • Documentation Supabase → utiliser archon-project
  • Déploiement → utiliser netlify-deploy

Tables du Projet

locations

Table principale contenant les blocs du village :

  • id : UUID
  • name : Nom du bloc (ex: "Block 1", "Block 2A")
  • coords : Coordonnées du polygone (JSONB)
  • color : Couleur d'affichage
  • created_at : Timestamp

public_pois

Points d'intérêt publics :

  • id : UUID
  • name : Nom du POI
  • type : Type (school, church, pool, etc.)
  • coordinates : [lng, lat]

Workflow Type

Vérifier l'état de la base

1. mcp__supabase__list_tables() - Lister les tables
2. mcp__supabase__get_advisors({ type: "security" }) - Vérifier RLS
3. mcp__supabase__get_advisors({ type: "performance" }) - Optimisations

Créer une migration

1. Analyser le besoin
2. mcp__supabase__apply_migration({
     name: "add_poi_category",
     query: "ALTER TABLE public_pois ADD COLUMN category TEXT;"
   })
3. Vérifier avec execute_sql

Requête de données

mcp__supabase__execute_sql({
  query: "SELECT * FROM locations WHERE name LIKE 'Block%' LIMIT 10;"
})

Bonnes Pratiques

  1. Toujours vérifier les advisors après une migration DDL
  2. Utiliser des noms snake_case pour les migrations
  3. Ne jamais hardcoder d'IDs dans les migrations de données
  4. Vérifier RLS sur toutes les tables publiques

Variables d'Environnement

Le projet utilise :

  • VITE_SUPABASE_URL - URL du projet Supabase
  • VITE_SUPABASE_ANON_KEY - Clé publique (anon)

Ces variables sont configurées dans .env et sur Netlify.