{"action":"opened","issue":{"url":"https://api.github.com/repos/cmcd146/Readwell-Full-Stack/issues/1","repository_url":"https://api.github.com/repos/cmcd146/Readwell-Full-Stack","labels_url":"https://api.github.com/repos/cmcd146/Readwell-Full-Stack/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/cmcd146/Readwell-Full-Stack/issues/1/comments","events_url":"https://api.github.com/repos/cmcd146/Readwell-Full-Stack/issues/1/events","html_url":"https://github.com/cmcd146/Readwell-Full-Stack/issues/1","id":367915541,"node_id":"MDU6SXNzdWUzNjc5MTU1NDE=","number":1,"title":"Proposal Feedback","user":{"login":"evhumphrey","id":6361824,"node_id":"MDQ6VXNlcjYzNjE4MjQ=","avatar_url":"https://avatars3.githubusercontent.com/u/6361824?v=4","gravatar_id":"","url":"https://api.github.com/users/evhumphrey","html_url":"https://github.com/evhumphrey","followers_url":"https://api.github.com/users/evhumphrey/followers","following_url":"https://api.github.com/users/evhumphrey/following{/other_user}","gists_url":"https://api.github.com/users/evhumphrey/gists{/gist_id}","starred_url":"https://api.github.com/users/evhumphrey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evhumphrey/subscriptions","organizations_url":"https://api.github.com/users/evhumphrey/orgs","repos_url":"https://api.github.com/users/evhumphrey/repos","events_url":"https://api.github.com/users/evhumphrey/events{/privacy}","received_events_url":"https://api.github.com/users/evhumphrey/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"cmcd146","id":41452916,"node_id":"MDQ6VXNlcjQxNDUyOTE2","avatar_url":"https://avatars1.githubusercontent.com/u/41452916?v=4","gravatar_id":"","url":"https://api.github.com/users/cmcd146","html_url":"https://github.com/cmcd146","followers_url":"https://api.github.com/users/cmcd146/followers","following_url":"https://api.github.com/users/cmcd146/following{/other_user}","gists_url":"https://api.github.com/users/cmcd146/gists{/gist_id}","starred_url":"https://api.github.com/users/cmcd146/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmcd146/subscriptions","organizations_url":"https://api.github.com/users/cmcd146/orgs","repos_url":"https://api.github.com/users/cmcd146/repos","events_url":"https://api.github.com/users/cmcd146/events{/privacy}","received_events_url":"https://api.github.com/users/cmcd146/received_events","type":"User","site_admin":false},"assignees":[{"login":"cmcd146","id":41452916,"node_id":"MDQ6VXNlcjQxNDUyOTE2","avatar_url":"https://avatars1.githubusercontent.com/u/41452916?v=4","gravatar_id":"","url":"https://api.github.com/users/cmcd146","html_url":"https://github.com/cmcd146","followers_url":"https://api.github.com/users/cmcd146/followers","following_url":"https://api.github.com/users/cmcd146/following{/other_user}","gists_url":"https://api.github.com/users/cmcd146/gists{/gist_id}","starred_url":"https://api.github.com/users/cmcd146/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmcd146/subscriptions","organizations_url":"https://api.github.com/users/cmcd146/orgs","repos_url":"https://api.github.com/users/cmcd146/repos","events_url":"https://api.github.com/users/cmcd146/events{/privacy}","received_events_url":"https://api.github.com/users/cmcd146/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2018-10-08T19:04:56Z","updated_at":"2018-10-08T19:04:56Z","closed_at":null,"author_association":"COLLABORATOR","body":"# Wiki Page Home\r\n\r\n- [x] Is the first page you see upon entering the wiki\r\n- [x] Contains a welcome message\r\n- [ ] Contains a link/placeholder for a link to the live page\r\n- [x] All links in the right sidebar should contain each wiki page and link to the correct page\r\n- [ ] Correctly formatted\r\n    - [ ] each wiki page is listed in bullet points\r\n    - [x] all links route the correct page\r\n\r\n## Comments\r\n\r\n* Great job on the proposal! \r\n\r\n---\r\n\r\n# MVP List\r\n\r\n- [x] Should have 7 MVPs.\r\n    - [x] 3 of those are User Auth, Heroku, and Production README.\r\n    - [x] The other 4 are from the [MVP List](https://github.com/appacademy/curriculum/blob/master/full-stack-project/proposal/mvp-list.md) or they have clarified them with you\r\n- [x] Contains a description sentence of the app\r\n- [ ] At least one CRUD feature, which states what CRUD operations are planned (creation, reading, updating, deletion)\r\n- [x] Estimates how long it will take the code each MVP\r\n- [x] Correctly formatted\r\n    - [x] MVPs are listed in an ordered list\r\n    - [x] Each MVP is broken down into bullet points\r\n\r\n## Comments\r\n\r\n* Each of the MVPs (where it makes sense) should have the following bullet points: Adequate styling | Smooth, bug-free navigation | Adequate and appropriate seeds to demonstrate the feature\r\n* There should be a delete feature somewhere (ability to delete a user's own bookshelves / reviews)\r\n\r\n---\r\n\r\n# Database Schema\r\n\r\n- [x] Contains correct datatypes\r\n- [x] Contains appropriate constraints/details\r\n    - [x] primary key\r\n    - [x] not null\r\n    - [x] unique\r\n    - [x] indexed\r\n    - [x] foreign key\r\n- [ ] Contains bullet points after the table that state which foreign keys will reference to which table, or references to the associations which will be made\r\n\r\n- [x] Correctly formatted\r\n    - [x] schema is written in a table format\r\n    - [x] the table's name are `back_ticked`\r\n    - [x] the table header column names are bolded\r\n    - [x] columns names are lowercased and snaked_cased and `back_ticked`\r\n\r\n## Comments\r\n* Formatting: I would make the table names be markdown headings (as well as being back_ticked)\r\n* `reviews` should have a `user_id` foreign key\r\n* joins tables should be underscored instead of hyphenated\r\n* `users_bookshelves` is probably not needed; you can store a `user_id` in the `bookshelves` table\r\n* You can rename `books_bookshelves` to `shelvings` if it makes it easier to work with\r\n\r\n---\r\n\r\n# Sample State\r\n\r\n- [x] State shape is flat!\r\n- [x] State's keys are camelCased\r\n- [x] All keys within the values in the state are accessible in the schema\r\n- [x] Correctly formatted\r\n    - [x] Sample state is rendered with triple backticks, and the language ` ```javascript...``` `). This will display the state as a code block instead of a giant line of text \r\n    - [x] Top level slices\r\n        - [x] `entities`\r\n        - [x] `session`\r\n        - [x] `errors` (here or in `ui`)\r\n        - [x] `ui` (if needed)\r\n    - [x] Should NOT have nested slices, aka  `comments` inside of `posts`\r\n      + Some info from other tables is ok, for instance:\r\n        + the author username and imageurl for a post. basically any info that the user can't change\r\n        + like count and a boolean on whether the user likes the post instead of a likes slice\r\n\r\n## Comments\r\n\r\n* Regarding camelCasing of keys -> [Configuring Rails as a JSON API - Thinkster](https://thinkster.io/tutorials/rails-json-api/configuring-rails-as-a-json-api) might be useful\r\n\r\n---\r\n\r\n# Backend Routes\r\n\r\n- [x] Contains the following sections: HTML, API Endpoints(Backend)\r\n- [x] Each route has a description\r\n- [x] API Endpoint routes contains wildcard variables written in `snake_case`\r\n- [x] Routes does not contain [superfluous routes](https://github.com/appacademy/curriculum/blob/master/rails/readings/routing-part-ii.md)\r\n- [x] Have API routes that will allow the front end to get all info it needs and does not have unneeded routes:\r\n    + probably doesn't need a `GET likes` api endpoint because that info comes through the post show\r\n\r\n## Comments\r\n\r\n* Ah I see what `bookshelves_users` is for based on `POST /api/bookshelvesUsers`. I wouldn't have this (or the table) for now; you can have Following Bookshelves as a Bonus feature\r\n* `reviews` and `bookshelves` will probably have a `DELETE` route after updating MVP\r\n* For `books_users`, you'll definitely want a `PATCH` route so you can toggle read status\r\n* For `books_bookshelves`, you'll want a `DELETE` route to \"unshelf\" a book from a bookshelf\r\n\r\n---\r\n\r\n# Frontend Routes\r\n\r\n- [x] Frontend routes contains wildcard variables written in `camelCase`\r\n- [x] Correctly formatted\r\n    - [x] Routes are displayed with `inline coding text` (backticks)\r\n"}}
{"actor":{"display_login":"evhumphrey"}}