Giter VIP home page Giter VIP logo

cp317-beer-finder's Introduction

CP317 Beer Finder Web App

Author Information:

  • Designed by: CP317 Software Engineering Students
  • Date Started: May 5th, 2018
  • Date Completed: August 14th, 2018

Inspiration:

Have you ever had an idea of what kind of beer you wanted, maybe a dark yellow beer with a medium body and an approximately 5% alcohol content, but you didn’t know what brand would be best linked to your criteria?

Our web application hopes to solve this by asking for user search criteria and returning a list of beers that match their specifications in order from most alike to least alike.

Tools:

Front-end:

  • Scripting: Django templating language (DTL) / JavaScript
  • Structure: HTML
  • Styling: CSS / Bootstrap

Back-end:

  • Server: Heroku
  • Database: PostgreSQL (built-in with Django)
  • API: Flask definitions for accessing/modifying database content
  • Data Structures: List, Queue, Stack

Connection between Front and Back-ends:

  • Django has a templating system called Jinga which allows for the dynamic conditional rendering of HTML files
  • All CSS and JS files are contained in a special folder named static where they can be referenced within the HTML file
  • Django is responsible for hosting the web application, accessing and modifying our PostgreSQL database, and with the Flask Framework, it can handle API requests so the front-end client can access/modify data from our back-end
  • JS is responsible for further manipulation of the HTML Document Object Model (DOM) that cannot be handed by DTL
  • CSS and Bootstrap are used for styling

Backend API:

Backend API repository

Team Members

Contributions Document SQA Document

Lead Developers

  • Russell Goldman
  • Tauqeer Choudhry
  • Don Vo

Django Templates

  • Abdullahi Abdullahi
  • Ziheng Wang (Isaac)
  • Zhixian Li (Catherine)
  • Abdisalan Mohamed Abdi

Bootstrap / CSS Styling

  • Ni Yang (Nina)
  • Yuting He
  • Franchesco Livado

Modellers and Database

  • Yanda Tao
  • David Moreno
  • Sirong Liu
  • Yu He
  • Peiyu Lu (Lucy)

Views and Routing

  • Abraham Banka (Dropped the course)
  • Zizheng Huang (Dropped the course)
  • Mengdan Wan (Dropped the course)
  • Jerry Haq (Dropped the course)

API Developers

  • Jeremy Lickers
  • Matthew Wong
  • Huai Yao Hu (Walter)
  • Wen Han Tang

Requirements Document

Analysis Document

Design Document

Installation

Clone this Git repository and unfreeze the requirements.txt file to gain access to a venv depencency folder.

source venv/bin/activate
pip3 install -r requirements.txt

Updating Dependencies

After updating dependencies on your venv, you MUST re-freeze the requirements.txt file.

source venv/bin/activate
pip3 freeze > requirements.txt

Running the Localhost Server

Open a Console program such as Terminal (Mac / Linux) or Windows Powershell (Windows). Use the cd (change directory) and ls (short listing) commands to move into the Git repository. From the root of the project, enter

source venv/bin/activate
cd projectRoot
python3 manage.py runserver

This will activate the localhost server and you will be able to view the application on the port displayed in the Console script.

Note: For this to work, you must have python3 installed on your local machine path.

cp317-beer-finder's People

Contributors

russellgoldman avatar abdisalanvp77 avatar damoba avatar abdul7070 avatar peiyulu avatar gincral avatar ctauqeer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.