Oi Deoclecio, tudo bem?
Com base na sua descrição, parece que você está procurando uma solução completa para desenvolver uma loja virtual. Para isso, você pode considerar uma combinação de diferentes tecnologias.
Front-end: Para a interface do usuário, você pode usar o Angular, como mencionado no seu curso. Angular é um framework poderoso que permite criar interfaces de usuário dinâmicas e responsivas.
Back-end: Para o servidor e a lógica de negócios, Node.js com Express é uma opção popular. Ele permite criar servidores web eficientes e é fácil de integrar com várias bases de dados.
Banco de dados: MongoDB é uma boa opção para armazenar os dados dos usuários e dos itens disponíveis para lance. Ele é um banco de dados NoSQL, o que significa que é flexível e escalável.
Autenticação: Para a autenticação de usuários, você pode usar o Passport.js. Ele suporta muitas estratégias de autenticação, incluindo o uso de tokens JWT, como você está aprendendo.
Pagamentos: Para a funcionalidade de pagamentos, você pode considerar a API do PayPal ou do Stripe. Ambas são seguras e amplamente usadas.
Por exemplo, um fluxo típico seria: o usuário se autentica usando suas credenciais, o servidor verifica essas credenciais e retorna um token JWT. Este token é armazenado no cliente e enviado em cada pedido subsequente para autenticar o usuário. Quando o usuário dá um lance em um item, essa informação é enviada para o servidor e armazenada no banco de dados.
Lembre-se de que esta é apenas uma sugestão e pode haver outras combinações de tecnologias que também funcionem para o seu projeto.
Cursos que recomendo com base no que você deseja:
Um abraço e bons estudos.