Code Monkey home page Code Monkey logo

multi-user-blogs's Introduction

Multi-User Blog

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.

Checkout the live version of this project.

Frameworks/technologies used

Project specifications

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

Setting up the project

  1. Clone this repo.
  2. Create a folder called lib in the project root.
  3. Using pip, pip install -t /path/to/lib pycrypto and pip install -t /path/to/lib wtforms
  4. In the project's helpers folder, create a secret.py file and place SECRET = 'YOUR SECRET HERE' on the first line.
  5. Follow instructions below for installing and setting up Google App Engine with the project.

Setting up your computer

  1. Install Python if necessary.
  2. Install Google App Engine SDK.
  3. Open GoogleAppEngineLauncher.
  4. Sign Up for a Google App Engine Account.
  5. Create a new project in Google’s Developer Console using a unique name.
  6. Create a new project from the file menu and choose this project's folder.
  7. Deploy this project by pressing deploy in GoogleAppEngineLauncher.
  8. 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.

multi-user-blogs's People

Contributors

the-code-chef avatar

Watchers

 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.