{"id":31554825,"url":"https://github.com/arthurzeras/expenses","last_synced_at":"2025-10-04T21:15:12.705Z","repository":{"id":36614903,"uuid":"182354117","full_name":"arthurzeras/expenses","owner":"arthurzeras","description":"Projeto com fins didáticos desenvolvido em meu canal do youtube.","archived":false,"fork":false,"pushed_at":"2022-02-10T17:30:03.000Z","size":574,"stargazers_count":18,"open_issues_count":2,"forks_count":8,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-03-03T15:37:40.435Z","etag":null,"topics":["firebase","front-end","frontend","javascript","js","tutorial","vue","vuejs"],"latest_commit_sha":null,"homepage":null,"language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arthurzeras.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-20T03:16:37.000Z","updated_at":"2022-12-11T16:02:41.000Z","dependencies_parsed_at":"2022-08-08T16:01:44.230Z","dependency_job_id":null,"html_url":"https://github.com/arthurzeras/expenses","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/arthurzeras/expenses","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arthurzeras%2Fexpenses","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arthurzeras%2Fexpenses/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arthurzeras%2Fexpenses/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arthurzeras%2Fexpenses/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arthurzeras","download_url":"https://codeload.github.com/arthurzeras/expenses/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arthurzeras%2Fexpenses/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278373516,"owners_count":25976150,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["firebase","front-end","frontend","javascript","js","tutorial","vue","vuejs"],"created_at":"2025-10-04T21:15:09.794Z","updated_at":"2025-10-04T21:15:12.687Z","avatar_url":"https://github.com/arthurzeras.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Expenses 💰💵💴💶💷💰\n\nO Expenses é um projeto que desenvolvi em meu canal do YouTube a fim de disseminar conhecimento.\nSe trata de uma SPA (Single Page Application) utilizando o Vue.js e o Firebase para inserir gastos\npessoais e ter um controle dos mesmos. Os dados são salvos no realtime database do Firebase e utilizo\ntambem o storage para salvar a imagem do comprovante caso o usuário queira inserí-la.\n\n## Conteúdos\n\n- [Tecnologias principais](#tecnologias-principais)\n- [Rodando o projeto local](#rodando-o-projeto-local)\n- [Compilar arquivos minificados para produção](#compilar-arquivos-minificados-para-produção)\n- [Fazer o deploy para o firebase](#fazer-o-deploy-para-o-firebase)\n- [Playlist passo a passo da construção do projeto](#caso-desejar-o-link-para-os-vídeos-estão-a-seguir)\n\n## Tecnologias principais\n\n- Vue.js v2.6.11\n- Vue Router v3.2.0\n- Firebase v7.19.0\n- Bootstrap v4.5.2\n\n### Rodando o projeto local\n\n- Clone o projeto na sua máquina;\n- Instale as dependências usando `npm i`\n- Renomeie o arquivo `.env.local.example` para `.env.local`;\n- Crie uma conta no [Firebase](https://firebase.google.com/) (basta ter uma conta do Google);\n- No console, adicione um novo projeto e dê o nome que preferir;\n- Copie as credenciais do projeto para o ambiente Web e coloque-as em seus devidos locais dentro do arquivo `.env.local`;\n- Ative o método de login para E-mail/senha;\n- Ative o realtime database dentro do console do Firebase;\n- Execute `npm run serve` para subir um servidor local para desenvolvimento com hot reload ativado.\n\n### Compilar arquivos minificados para produção\n\nPara criar os arquivos minificados prontos para serem colocados em um servidor web basta executar\n\n```npm\nnpm run build\n```\n\n### Fazer o deploy para o firebase\n\nPara usar o serviço de hosting do firebase basta executar os seguintes passos:\n\n- Crie uma pasta deploy na raiz do projeto;\n- Com o [firebase-tools](https://github.com/firebase/firebase-tools) instalado na máquina execute `firebase init` dentro da pasta deploy recém criada.\n\nSe estiver no Linux ou MacOS basta executar\n\n```npm\nnpm run deploy\n```\n\nNo windows é preciso fazer o procedimento na mão:\n\n- Execute `npm run build`;\n- Copie o conteúdo de dentro da pasta /dist para dentro da pasta /deploy/public;\n- Execute `firebase deploy` dentro da pasta /deploy.\n\n## That's all folks\n\n### Caso desejar, o link para os vídeos estão a seguir\n\n- [Playlist completa](https://www.youtube.com/playlist?list=PL7SyCwLzd5jt7zcDoBjGt7v7zViBt7WgA)\n- [#01 - Instalação e conceitos](https://youtu.be/g5CuiTpx6Sg)\n- [#02 - ESLint e Primeiro componente](https://youtu.be/A6MiP4-r154)\n- [#03 - Finalizando componente Spinner](https://youtu.be/1EhehnGDrDA)\n- [#04 - Instalando Firebase no projeto](https://youtu.be/GoimeX5pYWQ)\n- [#05 - Rotas e página de login](https://youtu.be/f-6mq8Gou_Y)\n- [#06 - Autenticando usuário no Firebase](https://youtu.be/aPae4ye9TyE)\n- [#07 - Impendindo visualização sem login](https://youtu.be/TX1f8m1GoUg)\n- [#08 - Criação do menu de navegação](https://youtu.be/eHUfHXwcCvc)\n- [#09 - Botões logout e adicionar gasto](https://youtu.be/2fhHeIb3zfE)\n- [#10 - Incluindo dados no firebase](https://youtu.be/lgu_PhYNW2g)\n- [#11 - Fazendo upload de imagem](https://youtu.be/6ReuV2wSImQ)\n- [#12 - Criando componente de notificação](https://youtu.be/yw3x64glBOc)\n- [#13 - Montando a estrutura de layout da Home](https://youtu.be/ecIRpas4K_U)\n- [#14 - Finalizando a página Home](https://youtu.be/eLWLOv6JfQo)\n- [#15 - Iniciando página da lista de gastos](https://youtu.be/gygePLUeFuc)\n- [#16 - Listando gastos por mês](https://youtu.be/Y8OY9QuDUfE)\n- [#17 - Abrindo comprovante e adicionando rolagem nos itens](https://youtu.be/5J9CKq5RLCc)\n- [#18 - Fazendo deploy no Firebase](https://youtu.be/d-_JA-RDrbw)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farthurzeras%2Fexpenses","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farthurzeras%2Fexpenses","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farthurzeras%2Fexpenses/lists"}