Skip to content

LucasUltremare/TaskHub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

TaskHub - Sistema de Gerenciamento de Tarefas Colaborativo

TaskHub é uma aplicação web de código aberto que permite o gerenciamento de tarefas e a colaboração em projetos. Com funcionalidades como autenticação de usuários, gerenciamento de projetos e tarefas, e uma interface intuitiva, TaskHub é a ferramenta perfeita para equipes que precisam organizar seu fluxo de trabalho.

🎯 Funcionalidades

  • Autenticação e Autorização

    • Registro de usuários
    • Login e Logout
    • Recuperação de senha
    • Autorização baseada em funções (Admin, Usuário)
  • Gerenciamento de Projetos

    • Criação, edição e exclusão de projetos
    • Adicionar membros a projetos
    • Visualização de tarefas por projeto
  • Gerenciamento de Tarefas

    • Criação, edição e exclusão de tarefas
    • Atribuir tarefas a membros do projeto
    • Definir prazos e prioridades
    • Marcar tarefas como concluídas
  • Dashboard

    • Visão geral dos projetos e tarefas
    • Filtros por status de tarefas (pendente, em progresso, concluída)

🚀 Tecnologias Utilizadas

Frontend

  • React.js com Next.js
  • Styled Components ou Tailwind CSS
  • Formik e Yup para formulários e validação

Backend

  • Node.js com Express
  • PostgreSQL ou MongoDB
  • Prisma ou Sequelize
  • JWT para autenticação

Testes

  • Jest e React Testing Library (frontend)
  • Supertest e Jest (API)
  • Testes unitários e de integração

Deploy e Build

  • CI/CD com GitHub Actions
  • Hospedagem do frontend no Vercel ou Netlify
  • Hospedagem do backend em uma VPS ou Heroku
  • Docker para containerização

Qualidade de Código

  • ESLint e Prettier
  • Husky e lint-staged
  • Documentação com Storybook
  • Controle de versionamento usando Git e GitHub

🛠️ Como Executar o Projeto Localmente

  1. Clone o repositório:

    git clone https://github.com/seu-usuario/taskhub.git
    cd taskhub
  2. Instale as dependências:

    npm install
  3. Configure as variáveis de ambiente:

    Crie um arquivo .env na raiz do projeto e defina as variáveis de ambiente necessárias:

    DATABASE_URL=seu-banco-de-dados-url
    JWT_SECRET=seu-segredo-jwt
  4. Execute a aplicação:

    Para iniciar o servidor de desenvolvimento:

    npm run dev

    Para buildar a aplicação para produção:

    npm run build
    npm start
  5. Acesse a aplicação:

    Acesse http://localhost:3000 no seu navegador para visualizar a aplicação.

🧪 Executando Testes

  • Para rodar os testes unitários e de integração:

    npm test

🐳 Usando Docker

  1. Buildar a imagem Docker:

    docker build -t taskhub .
  2. Rodar o container:

    docker run -p 3000:3000 taskhub

🤝 Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.

  1. Faça um fork do projeto.
  2. Crie uma branch para sua feature (git checkout -b feature/nova-feature).
  3. Commit suas alterações (git commit -m 'Adiciona nova feature').
  4. Faça push para a branch (git push origin feature/nova-feature).
  5. Abra um Pull Request.

📜 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

📞 Contato

Lucas Ultremare - @lucasultremare


TaskHub - Organize, colabore e conquiste suas tarefas com eficiência.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published