Giter VIP home page Giter VIP logo

stream2-project-1's Introduction

Code Institute Stream 2 Project

Overview

This site is my Code Institute end of Stream 2 (Back end) project. It aims to demonstrate an ability to code and deploy a database driven website that follows good practice. The website can be viewed at https://infinite-lake-67936.herokuapp.com/ and has the dual purpose of covering examination requirements while also illustrating my level of knowledge/competency to prospective employers.

The project looks to simplify the data based on the website Transfer League. Transfer League is a static website which provides a granular view of the data. The need this site fulfils is the need to present a broader, higher level, view of the Premier League and Championship transfer data and to provide an interactive interface where users can drill down into the data.

Key Functionality of the project

  • DC.js functionality, enabling responsive graphs, charts and values to be displayed.

  • Custom functionality for responsiveness:

    • HTML layout and Graphs are responsive to different devices (unlike default DC.js graphs).
    • Automatic page reload on mobile device orientation change to allow layout/graphs to be updated to the appropriate device size without a manual refresh.
    • A prompt for users that try to view the charts in portrait on very small mobile devices that they need to view in landscape.
    • The data table 'Most Expensive Transfers' sets the amount of rows depending on device type.
    • The data table 'Most Expensive Transfers' is sorted by fee, with the highest fee being at the top.
  • Custom functionality for appearance:

    • Default graph colour scheme overwritten to give a consistent theme of blue in graphs (rather than going from Blue to Orange as per default)
    • Page loader (holding screen) implemented to improve user experience so that the data is fully loaded and graphs/table fully populated before being presented to user.

Project Coding

Technologies used

3rd party code used:

  • I used a general bootstrap layout and responsive menu but where applicable I changed the default Bootstrap div elements as HTML5 semantic elements for improved usability.
  • The a loader is based on https://www.w3schools.com/howto/howto_css_loader.asp, but I developed mine to hide the full page and gracefully fade out when the D3 data has loaded.
  • Code supplied by Timmy O'Mahony (my mentor) to get the overal value shown for 'Total Transfer Spend to show 'B' for Billions rather than 'G' for Gig.

How was the project deployed

The project has been managed locally and deployed to GitHub (to host code) and Heroku (to run code) on a regular basis, with the current site viewable on Heroku at https://infinite-lake-67936.herokuapp.com/.

How was the project tested

Testing code quality

I validated the HTML used through https://validator.w3.org

Functional Testing and Testing the Responsive Design:

The testing that was carried out is outlined in the accompanying documentation.

stream2-project-1's People

Contributors

thecheesebeast avatar

Watchers

 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.