Blog online: http://multiuserblog-1470682713100.appspot.com/ Multi User Blog Project for Udacity Full Stack Nanodegree
The goal of this project is to create a simple multi-user blog along the lines of "Medium".
Users should be able to create an account with login/logout functionality, and create/edit/delete posts and comments.
- Clone the project (git clone https://github.com/Ahmed-elsayed-mahmoud/Project-3_Multi-User-Blog.git)
- Install google app engine
- Import the application into the laucher.
- Click on run button
- Or open command prompt in project folder and run following command: $dev_appserver.py .
- App will start running on configured port.
Blog must include the following features:
- Front page that lists blog posts.
- A form to submit new entries.
- Blog posts have their own page.
Registration must include the following features:
- A registration form that validates user input, and displays the error(s) when necessary.
- After a successful registration, a user is directed to a welcome page with a greeting, “Welcome, name” where name is a name set in a cookie.
- If a user attempts to visit a restricted page without being signed in (without having a cookie), then redirect to the Signup page.
Login must include the following features:
- Have a login form that validates user input, and displays the error(s) when necessary.
Users must include the following features:
- Users should only be able to edit/delete their posts. They receive an error message if they disobey this rule.
- Users can like/unlike posts, but not their own. They receive an error message if they disobey this rule.
- Users can comment on posts. They can only edit/delete their own posts, and they should receive an error message if they disobey this rule.
Code must conform to the Python Style Guide
- Install Python if necessary.
- Install Google App Engine SDK.
- Open GoogleAppEngineLauncher.
- Sign Up for a Google App Engine Account.
- Create a new project in Google’s Developer Console using a unique name.
- Create a new project from the file menu and choose this project's folder.
- Deploy this project by pressing deploy in GoogleAppEngineLauncher.
- When developing locally, click “Run” in GoogleAppEngineLauncher and visit localhost:Port in your favorite browser, where Port is the number listed in GoogleAppEngineLauncher’s table under the column Port.
- Bootstrap
- jQuery - for Bootstrap
- Google App Engine
- WTForms
- PyCrypto
The project is licensed under the Apache License.