Giter Site home page Giter Site logo

week2-atoms's People

Contributors

mineshmshah avatar polyccon avatar rebecacalvoquintero avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

week2-atoms's Issues

Could clarify test descriptions

According to the Intro to TDD, tests should have this format:

// Answer these questions for each unit test you write:
test('What component aspect are you testing?', function(assert) {
  const actual = 'What is the actual output?';
  const expected = 'What is the expected output?';

  assert.equal(actual, expected, 'What should the feature do?');
  assert.end();
});

Currently lots of them have the same strings in both descriptions, and they're not always very clear what's being tested e.g. 'Should return an array'
https://github.com/FAC-11/week2-atoms/blob/master/test.js#L229

Mobile responsiveness needs attention

When the page shrinks the contents start to shrink as well after around 950px. We need to adjust this with a media query for our disorganised big fingered friend as it is one of the user stories!

Buttons have no focus styles

You have outline: none set for all your buttons. If you're going to remove the browser defaults it's really important to replace them with something so that keyboard-only users can see what they're interacting with.

files in repo which shouldn't be there

the .idea folder, the .bash_profile and .DS_Store shouldn't be in the repo, please remove them and in future make sure not to push them up to github in future.
If you add them to the .gitignore at the start of any project you should be all good. Not all that sure how they got in there, but if something one of you is using is creating them plz make sure they go in the .gitignore.

create function add and its test

create a function that adds the task I write in the the "input form"

--> todos argument should be unchanged
--> new extended array (it should contain todos with the newTodo)
--> add an id to new todo -use generateId function-

Well done !!

Awesome job !!

  • It looks very clean ! I like the long white bar that surrounds a todo list !

  • The site works ! Its clear you have all done a very good job !

create a function "markAsComplete"

create a function that will mark my tasks as complete in my todoapp

  • The todos argument-array should be unchanged globally
  • IdtoMark should be added;
    -All other elements should be unchanged, except one with IdToMark
    -Toggle Value

Object.assign is ES6

I know it may have confusing as you may have been told about it as a way to copy an object, but Object.assign is ES6 and as such doesn't have enough browser compatibility that we at FAC consider it to be okay to use in client side javascript.

If your ever are unsure of whether something is ES5 go to the MDN page of the function/method/thing you want to use and scroll down to the "Specifications" section.

adding a new todo doesn't work

When I write some text into the input and click the "+" button nothing happens. I would expect a new todo to be added and for it to be appended to the DOM.

The site looks great in terms of the design and CSS but plz make sure the basic functionality is there before shifting to making everything beautiful.

Remove commented code

I know its really tempting to leave commented code in a project if you think you're going to use it again later down the line.

In reality the scope of projects change quite a lot so you can end up not needing features you previously did think you would need. In this case that might not be true but its a good habit to get into. Also the whole benefit of git is that you can go back and look at the history so if you delete it instead of comment it you'll always be able to find it again!

https://github.com/FAC-11/week2-atoms/blob/master/test.js#L101-L107

Avoid deeply nesting CSS selectors

Some of your CSS selectors are really deeply nested (ul .completed li .buttons button.complete svg. This unnecessarily adds specificity to your selectors, which means they're much harder to override. It's also a lot harder to read exactly what this CSS is styling.

Generally it's better practice to just add a class to the element you want to style (in this case the SVG). This is the philosophy behind practices like BEM.

There's a lot more info here: https://cssguidelin.es/#specificity

Form is better for creating todo

Right now you are not using a form correctly to create a todo

Something more like

<form>
  <input type=text>
  <input type='submit'>
....

Then in js

form.addEventListener('submit', function(event) {
  //now event object has all the data we need attached, the the click handler does not need to query the dom ..
}

Generally more accessible to mark up the form

deleteToDo() doesn't clone objects

Not sure if this is an actual issue but:

The deleteToDo function filters the original array so it does return a new array with the deleted item missing, however I think each item of the new array will be a reference to the objects in the original array, rather than copies of the objects.

So although the delete function itself doesn't edit the original it doesn't return a completely new array - not entirely sure if this is an actual issue, as if you then went on to edit the item presumably the edit function would clone each object before making the edit...

https://github.com/FAC-11/week2-atoms/blob/master/logic.js#L35

edit the to-dos items

I wil need a function that will allow me to edit my tasks in case I want to amend them

cannot tab !

I cant seem to tab through the site, especially to the delete todo button or add to do button

Use of Github

As far as I can see none of your commits are linked to issues. This is really important!

It's a big part of good git/github workflow.
Among other things, it allows you to see exactly which commits link to which issues, so if an issue is closed, but you see that it's actually not closed, you can see which commits did what relating to that issue.

Please make sure in next weeks project you link every commit to an issue.

perhaps change title of your tests?

Instead of having to repeat yourselves when naming all of your tests, it might be easier to take a different approach. For example, for your first test, instead of repeating the phrase: 'should return an array' on the following lines:

https://github.com/FAC-11/week2-atoms/blob/master/test.js#L5 (first line)
https://github.com/FAC-11/week2-atoms/blob/master/test.js#L8 (second line)

It might be more clear to always keep the first line to be the name of the function this test refers to . i.e. "deleteTodo function'.

Then have the second line to be the actual feature this test will test, so keep it as "should return an array".

Edit function

Code exists for edit function but feature not added as modal fields need work before hand. A later focus of the project but just a note code exists

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.