Uma rede social desenvolvida para a web, adaptada para qualquer dispositivo. Baseada nas primeiras versões do Reddit, onde as pessoas partilham as suas ideias apenas com texto, sem elementos visuais como imagens ou vídeos, e os utilizadores podem votar positivamente ou negativamente nos posts.
KLL é uma aplicação desenvolvida em ambiente Web com Laravel. No quesito de preservar os dados foi realizado com base de dados MySQL.
Esta não é um aplicação oficializada no mercado, foi construida no âmbito académico de forma aumentar as nossas capacidades técnicas e interpessoais.
Para comerçar a usar o software localmente na sua máquina, basta instalar o XAMPP e Composer.
Para colocar o projeto a funcionar localmente na sua máquina basta:
-
Clonar o repositório.
-
Abrir o XAMPP e iniciar o Apache e o MySQL.
-
Abrir o phpMyAdmin e criar uma base de dados com o nome "kll":
http://localhost/phpmyadmin
-
Na raiz do projeto, fazer uma cópia do ficheiro ".env.example" e renomeá-lo para ".env".
-
Abrir a linha de comandos.
-
Ir para a pasta do projeto:
cd "pasta_do_projeto"
-
Instalar todos os pacotes e dependências necessárias do projeto (apenas necessário uma vez quando se faz clone do repositório):
composer install
-
Gerar a chave para aceder à aplicação:
php artisan key:generate
-
Criar tabelas da base de dados:
php artisan migrate
-
Inserir dados fictícios na base de dados:
php artisan db:seed --class=DatabaseSeeder
-
Iniciar o servidor:
php artisan serve
-
Abrir a aplicação no browser a funcionar:
http://localhost:8000
É graças à API que o software se comunica com o servidor, possibilitando a interação com a base de dados e o armazenamento de dados.
Aqui você encontrará a lista de todos as funcionalidades disponíveis para efetuar essa comunicação.
Rota | Método | Descrição |
---|---|---|
PÁGINA INICIAL | ||
/ | GET | Ir para a página inicial. |
/search/{searchText} | GET | Pesquisar posts pelo título na página inicial. |
AUTENTICAÇÃO | ||
/auth | GET | Ir para a página de autenticação. |
/auth/login | POST | Iniciar sessão de um utilizador. |
/auth/signup | POST | Registar um utilizador. |
/auth/logout | GET | Terminar sessão de um utilizador. |
UTILIZADORES | ||
/profile/{userId} | GET | Ir para a página do perfil do utilizador. |
/account/{userId} | GET | Ir para a página de definições da conta. |
/account/edit-data/{userId} | PATCH | Atualizar os dados básicos do utilizador com login. |
/account/edit-password/{userId} | PATCH | Atualizar a palavra-passe do utilizador com login. |
/account/delete/{userId} | DELETE | Remover o utilizador com login. |
POSTS | ||
/posts/{postId} | GET | Ir para a página de um post específico. |
/posts/create | POST | Criar um novo post. |
/posts/edit/{postId} | PATCH | Atualizar um post. |
/posts/vote/{postId} | PATCH | Atualizar um voto de um post. |
/posts/delete/{postId} | DELETE | Remover um post. |
COMENTÁRIOS | ||
/comments/create/{postId} | POST | Criar um novo comentário. |
/comments/edit/{commentId} | PATCH | Atualizar um comentário. |
/comments/vote/{commentId} | PATCH | Atualizar um voto de um comentário. |
/comments/delete/{commentId}/{postId} | DELETE | Remover um comentário. |
ERRO FATAL | ||
/500 | GET | Ir para esta página quando existe uma erro que impede o funcionamento da aplicação. |
PÁGINA NÃO ENCONTRADA | ||
/404 | GET | Mostrar esta página quando o utilizador tenta aceder uma rota que não foi encontrada. |
As contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Quaisquer contribuições que você faça são muito apreciadas.
Se você tiver uma sugestão de melhoria, por favor, faça fork do repositório e crie uma pull request. Ou pode simplesmente abrir um issue. Não se esqueça de dar uma estrela ao projeto! Obrigado mais uma vez!
- Francisca Costa
- Lara Ribeiro
- Luís Pereira
Ao contribuir para este projeto, você concorda com as políticas da licença MIT.