/FDS

Primary LanguageJavaScriptMIT LicenseMIT

Schoolyard Finds

GitHub Files GitHub repo size GitHub language count Bitbucket open issues Bitbucket open pull requests Bitbucket Commits/Year

Logo do Projeto

Esse projeto é uma plataforma marketplace desenvolvida para a comunidade da CESAR School, com o objetivo de facilitar o comércio entre os membros da faculdade, onde os seus usuários poderão publicar produtos que desejam vender e comprar de outros usuários, com a possibilidade de negociação do item que desejado. Podendo ser acessado através desse LINK.

🔎 Funcionalidades Principais

  • Gerenciamento de Produtos: Permite que usuários registrem, editem e excluam produtos do marketplace.
  • Autenticação de Usuários: Sistema de login e registro seguro integrado ao Django, com proteção CSRF e armazenamento seguro de senhas.
  • Pesquisa e Filtros: Implementação de filtros dinâmicos e funcionalidade de busca para facilitar a navegação entre os produtos disponíveis.
  • Testes Automatizados: Testes end-to-end com Selenium, verificando a integridade das principais funcionalidades em múltiplos navegadores.
  • CI/CD: Pipeline automatizado utilizando GitHub Actions, garantindo testes automatizados e deploy contínuo para o ambiente de produção na AWS.
  • Integração com AWS: Deploy automatizado para AWS Elastic Beanstalk, garantindo alta disponibilidade e escalabilidade do sistema.

🚀 Tecnologias Utilizadas

Backend:

  • Python
  • Django

Frontend:

  • HTML
  • CSS
  • JavaScript

Banco de Dados:

  • SQLite (desenvolvimento)
  • AWS RDS (produção)

Testes:

  • Selenium

CI/CD:

  • GitHub Actions

Deploy:

  • AWS Elastic Beanstalk

Jira:

Figma:

Google Drive:

📁 Estrutura do Projeto

  • .ebextensions: Configurações para AWS Elastic Beanstalk.
  • .github: Workflows para CI/CD com GitHub Actions.
  • SchoolYardFinds: Código fonte da aplicação Django.
  • Home
    • forms.py: Arquivo contendo os formulários utilizados na aplicação, implementados com o Django Forms para validação e manipulação de dados de entrada.
    • models.py: Definição dos modelos de dados, representando as entidades do sistema e suas relações com o banco de dados.
    • tests.py: Conjunto de testes automatizados, implementados para verificar a funcionalidade e integridade dos componentes do sistema.
    • urls.py: Mapeamento das URLs da aplicação para as views correspondentes, definindo a estrutura de navegação do site.
    • views.py: Implementação das views da aplicação, contendo a lógica de apresentação e manipulação de dados para as páginas web.
  • static: Arquivos estáticos (CSS, JS, imagens).
  • templates: Templates HTML renderizados pelo Django.
  • manage.py: Script de gerenciamento do Django.
  • requirements.txt: Lista de dependências Python necessárias para o projeto.

💻 Pré-requisitos

  • Linguagem de Programação: Python v2023.8.0, JavaScript, CSS, HTML.
  • Git: Baixar o Git.
  • IDE: Visual Studio Code 1.78.2 ou outras IDEs.
  • Extensions: SQLite Viewer v0.2.5, HTML CSS Support v1.13.1, Live Server v5.7.9.
  • Sistema Operacional Compatível: Windows, Mac e Linux.

☕ Como Usar

Para usar Schoolyard Find, siga estas etapas:

  • Instalar a Aplicação no seu Computador:
1. O usuário deverá criar uma pasta em seu computador com um nome informativo da aplicação, como "Aplicação Schoolyard Finds".
2. O usuário então deverá apertar com o botão direito do mouse dentro da pasta e abrir o terminal da pasta.
3. Após isso, ele deverá inserir no terminal o comando "git clone https://github.com/Kal-0/FDS.git".
4. O usuário então abrirá o seu Visual Studio Code na versão certa e com as extensões baixadas, e apertará no botão "File".
5. Após isso, ele deverá navegar até "Open Folder", escolhendo a pasta que ele nomeou e aplicou o git clone.
6. O usuário deverá clicar com o botão direito do mouse em "FDS" e escolher a opção "Open in Integrated Terminal".
  • Comandos para Instalação Libs Necessárias no Requirements.txt:
1. pip install -r requirements.txt
  • Comandos para Utilização da Aplicação Local:
1. python manage.py makemigrations
1. python manage.py migrate
3. python manage.py runserver
  • Comandos para Contribuição:
1. git pull
2. git add .
3. git status
4. git commit -m "Inserir Mensagem"
5. git push
  • Abrir o Site do Schoolyard Finds:
1. Inserir no seu navegador o link "http://schoolyardfinds1.us-east-1.elasticbeanstalk.com/"

🎥 Screencast

Screencast

🤝 Colaboradores

Agradecemos às seguintes pessoas que contribuíram para este projeto:

Desenvolvedores:

Foto Kal
Caio Cesar
Foto Diogo
Diogo Henrique
Foto Stora
Estela Lacerda
Foto Matheus Gomes
Matheus Gomes
Foto Mell Brayner
Mell Brayner
Foto Sofia Valadares
Sofia Valadares

📝 Licença

Esse projeto está sob licença. Veja o arquivo LICENÇA para mais detalhes.

⬆ Voltar ao topo