Skip to content

gustavoaraujofs/TaskFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TaskFlow

Mantenha o fluxo de produtividade em suas mãos.

Sobre

  • O TaskFlow é um sistema de gerenciamento de tarefas projetado para simplificar e otimizar sua rotina diária.
  • Com uma abordagem centrada no usuário, nosso objetivo é proporcionar uma experiência fluida e intuitiva, permitindo que você mantenha o controle total sobre suas tarefas de forma eficiente.

Propósito

O objetivo principal deste projeto é criar uma plataforma intuitiva e eficiente para o gerenciamento de tarefas dos usuários. O sistema fornecerá ferramentas essenciais para facilitar a criação, edição, priorização e organização das atividades diárias. Além disso, permitirá aos usuários definir datas de vencimento, configurar lembretes e realizar outras ações para acompanhar suas tarefas de forma eficaz.

Funcionalidades

  • Criar / editar / excluir tarefas
  • Organizar por categoria
  • Priorizar tarefas
  • Atribuir prazos
  • Filtrar e pesquisar

Tecnologias

Front-end:

  • Html
  • CSS
  • Javascript

Back-end:

  • Node.js
  • Express
  • MySQL

Como Usar

Clonando o Repositório

Para começar, clone o repositório:

# comando para clonar o repositório
$ git clone https://github.com/gustavoaraujofs/TaskFlow.git

Configuração do Banco de Dados

Após clonar o repositório, é necessário criar um banco de dados MySQL e as tabelas necessárias.

# Comando para criar o banco de dados no MySQL
$ CREATE DATABASE database_name;

Criando as Tabelas

Certifique-se de seguir a ordem de criação das tabelas para evitar erros de dependência:

  • usuarios
  • categorias
  • tarefas

As tabelas devem ser criadas nessa ordem específica para garantir que as chaves estrangeiras sejam configuradas corretamente. Primeiro, criamos a tabela usuarios, já que as outras tabelas dependem dela. Em seguida, criamos a tabela categorias, que referencia usuarios. Por último, criamos a tabela tarefas, que depende tanto de usuarios quanto de categorias.

# Código SQL para criar a tabela USUARIOS
$ CREATE TABLE usuarios (
    id_usuario INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
    nome VARCHAR(100) NOT NULL,
    email VARCHAR(50) UNIQUE NOT NULL,
    senha VARCHAR(255) NOT NULL
);
# Código SQL para criar a tabela CATEGORIAS

CREATE TABLE categorias (
    id_categoria INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
    nome VARCHAR(55) NOT NULL,
    usuario_id INT NOT NULL,
    FOREIGN KEY (usuario_id) REFERENCES usuarios(id_usuario)
);
# Código SQL para criar a tabela TAREFAS

CREATE TABLE tarefas (
    id_tarefa INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
    titulo VARCHAR(55) NOT NULL,
    descricao VARCHAR(255),
    prioridade VARCHAR(10),
    prazo_final DATE,
    status VARCHAR(12) NOT NULL,
    usuario_id INT NOT NULL,
    categoria_id INT,
    FOREIGN KEY (usuario_id) REFERENCES usuarios(id_usuario),
    FOREIGN KEY (categoria_id) REFERENCES categorias(id_categoria)
);

Arquivo de Configuração de Ambiente

Na raiz do projeto, há um arquivo chamado .env.example. Este arquivo contém 5 campos que precisam ser preenchidos em um arquivo nomeado .env. Você pode criar este arquivo ou renomear o arquivo de exemplo. Preencha os campos com os dados relacionados ao seu banco de dados.

PORT= (Porta em que o servidor será executado)
MYSQL_HOST= (O host da sua máquina, por padrão é 'localhost')
MYSQL_USER= (Seu nome de usuário, por padrão o MySQL usa 'root')
MYSQL_PASSWORD= (A senha que você escolheu ao instalar o MySQL)
MYSQL_DB= (O nome do banco de dados que você criou anteriormente.)
JWT_SECRET= (Uma sequência qualquer de letras números e caráteres que será usada para criação do token de autenticação)

Instalando as Dependências

Antes de iniciar a aplicação, precisamos instalar as dependências node_modules. Para isso, abra o terminal da sua IDE e navegue até a pasta "backend".

# Comando para instalar as dependências
$ npm install

Iniciando o Servidor

Finalmente, execute o comando para iniciar o servidor (ainda dentro da pasta "backend") e abra o arquivo "login.html".

# Comando para iniciar o servidor
$ npm start

Autores

About

Sistema de gerenciamento de tarefas.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors