Commit Graph

2 Commits

Author SHA1 Message Date
244b1ae7fb fix: move Metabase credentials to runtime config
All checks were successful
build-and-deploy / build (push) Successful in 43s
build-and-deploy / deploy (push) Successful in 4s
Move hardcoded Metabase credentials to Nuxt runtime config to
allow configuration via environment variables and follow security
best practices.

Changes:
- Update server/utils/metabase.ts to use useRuntimeConfig()
- Add metabase config to nuxt.config.ts runtimeConfig
- Update .env.example with Metabase configuration template

Environment variables:
- METABASE_URL (default: https://metabase.nucleoriofrio.com)
- METABASE_EMAIL (required for authentication)
- METABASE_PASSWORD (required for authentication)
2025-10-13 17:50:21 -06:00
4b25a70b8b feat: add Metabase API integration
All checks were successful
build-and-deploy / build (push) Successful in 45s
build-and-deploy / deploy (push) Successful in 3s
Add complete integration with Metabase API to fetch data from
'facturador supabase' database.

Features:
- Server-side Metabase authentication using session tokens
- Utility functions for Metabase API requests with auto-retry
- API endpoints to proxy Metabase requests
  - GET /api/metabase/databases - List all databases
  - GET /api/metabase/tables/:databaseId - Get tables and metadata
  - POST /api/metabase/query - Execute queries against tables
- useMetabase() composable for frontend consumption
  - getDatabases() - Fetch available databases
  - getDatabaseMetadata() - Get tables and fields info
  - queryTable() - Execute queries with filters and limits
  - resultToObjects() - Helper to convert results to objects

Session tokens are cached and auto-refreshed when expired.
This enables the application to display real data from the
facturador database without using embeds or iframes.
2025-10-13 17:46:48 -06:00