Skip to content

[FEATURE] Listas de álbuns personalizadas #16

Description

@lumamontes

Contexto

Plataformas como Letterboxd permitem que usuários criem listas temáticas (ex: "Melhores de 2025", "Para ouvir no café"). O BeatWave atualmente só tem favoritos, sem suporte a listas customizadas.

Objetivo

Permitir que usuários criem, editem e compartilhem listas de álbuns com título e descrição.

Funcionalidades esperadas

  • Criar lista com título, descrição opcional, e visibilidade (pública/privada)
  • Adicionar/remover álbuns de uma lista
  • Reordenar álbuns dentro da lista (drag-and-drop)
  • Página pública da lista (/list/[id])
  • Seção "Minhas Listas" no perfil do usuário
  • Listas visíveis no perfil público

Critérios de aceitação

  • Tabelas lists e list_items criadas no schema Drizzle
  • CRUD completo no backend com autenticação
  • Interface de criação e edição no frontend
  • Página pública da lista com álbuns e informações
  • Segue o design system neobrutalism

Dicas técnicas

  • Schema: criar em packages/database/src/schema.ts
  • Migração: pnpm db:generate e pnpm db:migrate no workspace database
  • Backend: novo módulo ListsModule em apps/api/src/
  • Frontend: novas rotas em apps/web/src/app/list/
  • Reutilizar o drag-and-drop (@dnd-kit) já usado para reordenação de tracks

Nível de dificuldade

🔴 Avançado — feature full-stack completa com schema novo, CRUD, e múltiplas telas.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions