Giter VIP home page Giter VIP logo

matt70iu-javascript-milestone-v1_juneresub's Introduction

My To-Do-List

Live site can be found here

My to do list was set up as a useful tool which can be put to a variety of uses. Examples of possible uses include: A shopping list, an inventory list, task list etc The application is also fully repsonsive and works on a variety of devices as illustrated below.

S20 portrait:

S20-portrait

S20 Landscape

S-20-landscape

Iphone portrait

iphone-portrait

Iphone landscape

iphone-landscape

Ipad portrait

ipad-portrait

Ipad landscape

ipad-landscape

Features

The main list area consists of a title, task counter, input field, add button, social media icons, as well as a link to a set of instructions for the app. The user can also navigate back to the main app page when viewing instructions.

main-list

Technologies Used:

  • HTML5

  • CSS3

  • Javascript

  • Font awsome font library

  • Google fonts

Existing Features

  • Task Counter This is set to remain at zero while the task list is empty and increase relevent to the amount of tasks on the list at any given time as illustrated below.

task-counter

task-counter-increase

  • Home page

  • The main list area contains a title, task counterm input field to add to type your tasks and a highlighted red button to add tasks to the list.

  • At the bottom of the main home page, there is a link to a set of instructions, as well as social media icon links to facebook, twitter and instagram. These are illustrated below.

instructions-link-social

  • As the user adds a task, a trash min icon appears beside that task to enable the user to later remove that task once it has been completed, as illustrated below.

trash-can-delete

  • Instructions page

  • This is to give the user a simple and basic set on instructions on how to use the app.

  • There are also suggestions as to possible uses for the app as well as a link back to the main page and facebook, twitter and instagram social media icons. These are also illustrated below.

Instructions-main

Features Left to Implement

  • Would like to add a number beside each list item which increases according to the number of items on the list, as well as the already included counter at the top of the list.
  • Would like to improve app layout on smaller screens in future to reduce the need for the user to scroll.
  • Favicon nto displaying properly on live site so had to remove for now as also causing console errors.

Testing

  • Major bug identified from first submission results, in which delete button was not deleting the item to which it was attached but rather, was deleting the first item at the top of ths list regardless. This has now been recectified by asigning the delete button to the element to which it refers.
  • Main input field and add button kept popping out of the container on smaller screen sizes. Changed CSS property on input field to 100% of container size to rectify issue.
  • Errors in html validator after making social icons live caused by open tags. Rectified tags as needed.
  • Tested app live on Samsung Galaxy S22 and found instructions were not fully visbale on smaller screens as they would not scroll. Amended html markup to rectify.
  • Social icons and links too close to margins on smaller screens, inserted media quueries to compensate.
  • Removed redundent variables cuasing warning in jshint, updated js with es6 code to prevent es6 related errors using const.
  • Portrait on medium to small screens hding the input field and could not be accessed. Added scroll to Y axis and allowed input field to move as items added to list to compensate.
  • Favicon not displaying unless files are in root directory. Chose to have favicon and leave files in root directory.

Validator Testing

  • HTML
  • No errors displayed when code was run through HTML Validator html validator

https://validator.w3.org/

  • CSS

  • No errors displayed when code was run through CSS Validator CSS Validator

https://jigsaw.w3.org/css-validator/

  • Js

  • No errors displayed when code was run through Js Validator js Validator

https://jshint.com/

Deployment

The site was deployed to GitHub pages. The steps to deploy are as follows:

  1. Login to github and select the correct repository.
  2. Select the settings tab at the top the the repository.
  3. On the side bar, under the 'code and automation' heading, select 'pages'.
  4. Under the source heading, click the 'none' dropdown and select 'masterbranch'.
  5. Once done, the page will automaticallty refresh.
  6. Site is now live under https://matt70iu.github.io/JavaScript-milestone-V1/ in github pages.

Making a local clone:

  1. Login to gitbub and download github desktop.
  2. Select the correct repository from the dropdown list in the top left.
  3. Secect the 'repository' menu and from it select 'pull'.
  4. Select 'open in visual studio code' from the home screen.
  5. The repository can now be worked on locally, without the need to gitpod etc.

Forking the repository:

  1. Login to Gitbut and select the relevent repository.
  2. At the top the the repository (not page), select settings.
  3. Then select fork. I am currently not able to fork the repository as I own it, but this this the procedure one would normally follow.

Credits

  • Youtube tutorials used to help build site:

https://www.youtube.com/watch?v=mC45hUE0dNs&t=2s

Channel Link:https://www.youtube.com/channel/UC_H7wrnwGU3g1xrLasMf6Gg (Samir Saini)

  • Helped drastically in terms of basic site template as well as putting js code theory into proctise as a real live example.

https://www.youtube.com/watch?v=-pRg_daFjfk&t=550s

Channel Link:https:https://www.youtube.com/channel/UCCcK9DoXcPYcUYU2aSR7zzQ (learn-webdev)

  • Found this very helpful and easy to follow. Helped me to understand targeting of elements better between html and js.

https://www.youtube.com/watch?v=MkESyVB4oUw&t=1264s

Channel Link:https://www.youtube.com/channel/UCBBGM84ZOs7z5jpTQAaZ_Hg (Tyler Potts)

  • Slightly more feature rich example which gave me some great ideas in terms of possible future developement of site/app.

https://www.youtube.com/watch?v=3T_Jy1CqH9k&t=284s

Channel Link: https://www.youtube.com/channel/UCJZv4d5rbIKd4QHMPkcABCw (kevin Powell)

  • Really helped in terms of styling and editing of backgound image(s).

https://www.youtube.com/watch?v=IhmSidOJSeE&t=715s

Channel Link: https://www.youtube.com/channel/UCJZv4d5rbIKd4QHMPkcABCw (kevin Powell)


Content

Acknowledgements

  • My mentor for all his help and advise.
  • The tutors at code institue for their helpful assistance.
  • The youtubers whose tutorials helped further develop my coding skills.

matt70iu-javascript-milestone-v1_juneresub's People

Contributors

matt70iu 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.