Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brunocarvalhofeitosa/spotify-clone
Clone of Spotify made with Next.js, PostgreSQL, Supabase, Stripe and TailwindCSS
https://github.com/brunocarvalhofeitosa/spotify-clone
Last synced: 4 days ago
JSON representation
Clone of Spotify made with Next.js, PostgreSQL, Supabase, Stripe and TailwindCSS
- Host: GitHub
- URL: https://github.com/brunocarvalhofeitosa/spotify-clone
- Owner: BrunoCarvalhoFeitosa
- License: mit
- Created: 2023-10-30T16:11:52.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-04T20:54:43.000Z (12 months ago)
- Last Synced: 2023-12-04T21:47:05.278Z (12 months ago)
- Language: TypeScript
- Homepage: https://bruno-carvalho-feitosa-spotify-clone.vercel.app
- Size: 204 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Este projeto foi feito em Next.js, Typescript, Supabase, Stripe e TailwindCSS e basicamente consiste num clone da plataforma de streaming Spotify. Em resumo, a aplicação possui funcionalidades de login e cadastro, possui um sistema de pagamento, onde através do Stripe o usuário consegue processar pagamamentos utilizando cartão de crédito, no caso foi criado somente um produto que é uma assinatura mensal no valor de R$21,90. Após a assinatura ser processada com sucesso pelo usuário, ele poderá dar play nas músicas, curti-las e poderá fazer o upload de novas músicas que estarão disponíveis para ele e para os outros usuários da plataforma também.Sumário
## Sobre o projeto
Através do Supabase, foi possível modelar o banco de dados da aplicação, onde foi possível criar diversas model's sendo uma para Usuários (novos usuários cadastrados), Músicas (upload das músicas dos usuários que possuem cadastro), Produtos (tipo de serviço, no caso assinaturas que podem ser mensais, semestrais ou anuais, eu criei somente uma, que é a mensal), Preço (valor do produto, no caso o preço mensal da assinatura que é de R$21,90) e Músicas Curtidas (salvar as músicas favoritadas pelo usuário). Ao acessar a aplicação pela primeira vez, é possível visualizar todas as músicas que já foram salvas na plataforma, caso o usuário clique no play, será solicitada a ação de login/cadastro. Ao estar logado, caso ele não tenha assinado nenhum plano ainda e caso ele tente dar play em alguma música ou favorita-la, sempre aparecerá um popup para ele assinar o plano mensal. Através do Stripe, o usuário consegue assinar o plano utilizando um cartão de crédito e ter acesso às músicas, a partir deste momento, o usuário consegue ouvir as músicas que ele deseja, curti-las e consegue também fazer o upload de novas músicas.### Projeto
https://github.com/BrunoCarvalhoFeitosa/spotify-clone/assets/46093815/aa01f86c-2536-4d08-b1ce-5e4b4c3a0cf4
### Feito com
* [Next.js](https://nextjs.org)
* [Typescript](https://www.typescriptlang.org)
* [Supabase](https://supabase.com)
* [Stripe](https://stripe.com/br)
* [TailwindCSS](https://tailwindcss.com)
* [Vercel](https://vercel.com)### Hospedagem
A aplicação está em produção neste link: (https://bruno-carvalho-feitosa-spotify-clone.vercel.app).
## Iniciando o projeto
Primeiramente será necessário clonar este projeto em (https://github.com/BrunoCarvalhoFeitosa/spotify-clone.git), após o download será necessário abrir este projeto no seu editor e no terminal digitar npm install ou yarn, posteriormente é só rodar em seu terminal o comando npm run dev ou yarn dev, após isso, a página será aberta em seu navegador.
### Pré-requisitos
* npm
```sh
npm install npm@latest -g
```### Instalação
1. Clone o repositório
```sh
git clone https://github.com/BrunoCarvalhoFeitosa/spotify-clone.git
```
2. Instale os pacotes do NPM
```sh
npm install ou yarn
```
3. Inicie o projeto
```sh
npm run dev ou yarn dev
```## License
Distribuído sob a licença MIT.
## Contato
Bruno Carvalho Feitosa - [GitHub](https://github.com/BrunoCarvalhoFeitosa) - [LinkedIn](https://www.linkedin.com/in/bruno-carvalho-feitosa/)