Carlos Eduardo Gatti Ferreira

🌱 Seed de Assets Principais - Wealth Tracker

Este documento explica como popular o banco de dados com os principais assets para o Wealth Tracker.

💡 Dica: Se o banco local foi deletado, veja o guia completo de setup em local-database-setup.md

📋 Conteúdo

Este seed inclui aproximadamente 80+ assets principais:

🚀 Como Usar

Opção 1: SQL Direto (PostgreSQL/MySQL)

Execute o arquivo SQL diretamente no banco:

# PostgreSQL
psql -U seu_usuario -d wealth_tracker -f docs/02-setup/apps/wealth-tracker/seed-assets.sql

# MySQL
mysql -u seu_usuario -p wealth_tracker < docs/02-setup/apps/wealth-tracker/seed-assets.sql

Opção 2: Script TypeScript (Recomendado)

Se você está usando Prisma:

  1. Certifique-se de que o Prisma está configurado:
npm install @prisma/client
npx prisma generate
  1. Execute o script:
# Usando ts-node
npx ts-node docs/02-setup/apps/wealth-tracker/seed-assets.ts

# Ou compile e execute
tsc docs/02-setup/apps/wealth-tracker/seed-assets.ts
node docs/02-setup/apps/wealth-tracker/seed-assets.js
  1. Ou adicione ao package.json:
{
  "scripts": {
    "seed:assets": "ts-node docs/02-setup/apps/wealth-tracker/seed-assets.ts"
  }
}

Depois execute:

npm run seed:assets

Opção 3: Via Prisma Seed

Adicione ao seu prisma/seed.ts:

import { seedAssets } from '../docs/02-setup/apps/wealth-tracker/seed-assets';

async function main() {
  await seedAssets();
}

main()
  .catch((e) => {
    console.error(e);
    process.exit(1);
  })
  .finally(async () => {
    // await prisma.$disconnect();
  });

Execute:

npx prisma db seed

📝 Estrutura dos Assets

Cada asset possui:

⚠️ Importante

Desenvolvimento

Produção

Personalização

Você pode:

  1. Adicionar mais assets editando os arquivos seed-assets.sql ou seed-assets.ts
  2. Remover assets que não são relevantes para seu caso
  3. Ajustar exchanges conforme sua preferência
  4. Adicionar metadata se necessário

🔄 Atualização

Para atualizar o seed:

  1. Edite os arquivos seed-assets.sql ou seed-assets.ts
  2. Adicione novos assets à lista
  3. Execute novamente (o script pula duplicatas automaticamente)

📊 Assets Incluídos

ETFs Principais

Stocks Principais

Cryptos Principais

Cash

Real Estate

🐛 Troubleshooting

Erro: “Asset already exists”

Erro: “Ticker is required”

Erro: “Cannot connect to database”

📚 Referências

🔗 Arquivos Relacionados


Última atualização: Dezembro 2024 Versão: 1.0.0