{"id":26262648,"url":"https://github.com/underewarrr/template-vercel-serverless-fullstack","last_synced_at":"2026-04-10T14:41:26.906Z","repository":{"id":175377202,"uuid":"653800460","full_name":"Underewarrr/template-vercel-serverless-fullstack","owner":"Underewarrr","description":"Template para criação rapida de um app fullstack com deploy configurado na vercel. Siga o readme para lançar seu projeto em segundos.","archived":false,"fork":false,"pushed_at":"2023-06-29T15:51:52.000Z","size":183,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-21T00:03:25.462Z","etag":null,"topics":["axios","high-order-component","javascript","jsonwebtoken","nextjs","react","react-bootstrap-components","react-router-v6","serverless-functions","typescript"],"latest_commit_sha":null,"homepage":"https://template-vercel-serverless-fullstack.vercel.app","language":"TypeScript","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/Underewarrr.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-14T19:05:08.000Z","updated_at":"2023-06-20T17:07:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"77cdf2a7-ef51-489c-b060-76a0ede0d97f","html_url":"https://github.com/Underewarrr/template-vercel-serverless-fullstack","commit_stats":null,"previous_names":["underewarrr/template-vercel-serverless-fullstack"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/Underewarrr/template-vercel-serverless-fullstack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Underewarrr%2Ftemplate-vercel-serverless-fullstack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Underewarrr%2Ftemplate-vercel-serverless-fullstack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Underewarrr%2Ftemplate-vercel-serverless-fullstack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Underewarrr%2Ftemplate-vercel-serverless-fullstack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Underewarrr","download_url":"https://codeload.github.com/Underewarrr/template-vercel-serverless-fullstack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Underewarrr%2Ftemplate-vercel-serverless-fullstack/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261039081,"owners_count":23100969,"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","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":["axios","high-order-component","javascript","jsonwebtoken","nextjs","react","react-bootstrap-components","react-router-v6","serverless-functions","typescript"],"created_at":"2025-03-14T00:31:57.091Z","updated_at":"2025-12-30T20:06:45.612Z","avatar_url":"https://github.com/Underewarrr.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Health Status\n...\n### Vercel\n- As funções [Serverless](https://vercel.com/docs/concepts/functions/serverless-functions) permitem que os desenvolvedores escrevam funções em JavaScript e outras linguagens para lidar com autenticação de usuário, envios de formulários, consultas de banco de dados  e muito mais.\n\n- Logs nas funções Serverless.\n\n### NextJS\n- Seguindo o padrão da documentação da [vercel + nextjs](https://vercel.com/docs/frameworks/nextjs), você pode entender melhor sobre a organização das rotas da api ou paginas.\n\n#### Front-end Routes :\n##### OBS : Para as rotas e as requisições a pasta pages não será incluida a rota final sendo : /user/pagename.\n\n`/pages/user/pagename`\n- OBS: Observe que nesse exemplo teriamos um arquivo pagename.ts\n\n- OBS: Se o nome do arquivo/pagina for index.ts então será carregado com o nome da pasta do arquivo exemplo :\n`/pages/user/login`\n- OBS: Observe que nesse caso teriamos um arquivo index.ts\n\n#### Back-end Routes :\n##### OBS : Para as rotas e as requisições a pasta pages não será incluida a rota final sendo : /api/user/pagename.\n\n`/pages/api/user/pagename`\n- OBS: Observe que nesse exemplo teriamos um arquivo pagename.ts\n\n- OBS: Se o nome do arquivo/pagina for index.ts então será carregado com o nome da pasta do arquivo exemplo :\n`/pages/api/user/login`\n- OBS: Observe que nesse caso teriamos um arquivo index.ts\n\n## Como rodar\nOBS: Database ainda não configurada nesse repo.\n### (Vercel-Pro-Way)\nFork o respositorio, entre no site da [vercel](https://vercel.com/) e importe o projeto, pronto agora é só esperar a vervel criar o dominio e colocar o app online!\n### (Vercel-Config)\nApós importar o projeto tudo feito, agora espere o build, enquanto isso podemos configurar nossas variaveis de ambiente direamente na vercel.\nInfelizmente a vercel não importa diretamente do .env é necessario adicionar na interface do proprio website da vercel.\n```\nJWT_SECRET = JWT_SECRET\nDB_USER = \nDB_PASS = \nDB_NAME =\nDB_HOST = www.db4free.net\nREACT_APP_API_PORT = 3000\n```\n### NodeConfig (NPM)\nLembre-se usando o ORM(squelize) é necessario antes rodar as migrations e seeders para popular a sua database.\ncom o comando `db:reset`\n![image](https://github.com/Underewarrr/template-vercel-serverless-fullstack/assets/74227915/b6435c71-2932-4146-ab7a-4a0ebb2a3126)\nPara configurar o usuario do Sequelize utilize o .env.example do projeto.\n\n\n## AuthSystem\nO sistema de proteção de rotas funciona com uma hoc [(High Order Component)](https://github.com/Underewarrr/template-vercel-serverless-fullstack/blob/master/pages/hoc/withAuth.tsx), como esse component é recarregado apenas nas rotas que o usuario tem permissão então algumas verificações e dados podem ser salvos e usados nesse component quando necessario!\nPara proteger uma rota inicie o component `\u003cProtectedRoute /\u003e`\n\n#### OBS : Ainda esta faltando configurar corretamente o middleware do Jsonwebtoken.\n\n#### \n\n# Ferramentas\n## Front-End\n### Frameworks\n- React \n- Bootstrap\n### JustLibs\n- jsonWebToken\n- mdb-react-ui-kit\n- axios\n- react-dom\n- swr NOT USED\n## Back-End\n### Frameworks\n- NextJS\n\n### JustLibs\n- Sequelize\n- Mysql2\n### Languages\nTypescript, Javascript\n\n## Configuração de ORM (Database)\n - [x] [User](https://github.com/Underewarrr/template-vercel-serverless-fullstack/blob/master/database/models/User.ts)\n## Rotas Front-End\n- /user\n  - /login\n  - /register\n\n## Rotas Back-end\n- /api\n  - /user\n    - /login\n    - /register\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funderewarrr%2Ftemplate-vercel-serverless-fullstack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funderewarrr%2Ftemplate-vercel-serverless-fullstack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funderewarrr%2Ftemplate-vercel-serverless-fullstack/lists"}