##Instructions to run the website:
- The website is hosted in Google Cloud Free account, the site can be visited by following this link : http://myblogapp-1470629927816.appspot.com/
- It can also be run using local host: Download Google App Engine python SDK and load this github cloned folder
-
Code Functionality:
- What framework is used? : App is built using Google App Engine : done
- Blog is deployed and viewable to the public : The submitted URL is publicly accessible.: done
-
Site Usability:
- The signup, login, and logout workflow is intuitive to a human user : done
- User is directed to login, logout, and signup pages as appropriate. E.g., login page should have a link to signup page and vice-versa; logout page is only available to logged in user. done
- Editing and viewing workflow is intuitive to a human user : done
- Links to edit blog pages are available to users. Users editing a page can click on a link to cancel the edit and go back to viewing that page. : done
- Pages render correctly. Blog pages render properly. Templates are used to unify the site : done
- The signup, login, and logout workflow is intuitive to a human user : done
-
Accounts and Security:
- User accounts are appropriately handled : done
- Users are able to create accounts, login, and logout correctly : done
- Account information is properly retained : done
- Existing users can revisit the site and log back in without having to recreate their accounts each time. : done
- Usernames are unique : done
- Usernames are unique. Attempting to create a duplicate user results in an error message. : done
- Passwords are secure and appropriately used. : done
- Stored passwords are hashed. Passwords are appropriately checked during login. User cookie is set securely. : done
- User accounts are appropriately handled : done
-
Permissions:
- User permissions are appropriate for logged out users. : done
- Logged out users are redirected to the login page when attempting to create, edit, delete, or like a blog post. : done
- User permissions are appropriate for logged in users. : done
- Logged in users can create, edit, or delete blog posts they themselves have created. : done
- Users should only be able to like posts once and should not be able to like their own post. : done
- Comment permissions are enforced. : done
- Users can only edit and delete comments they themselves have made. : done
- User permissions are appropriate for logged out users. : done