Git Product home page Git Product logo

goldenblog's Introduction

Assignment: Blog app

Making a full-featured blog application

  1. Overview

  1. Project/Source code management/Workflow

a. Use your personal account to create a new private project (GoldenBlog) on Github

b. Init the repository, dev, commit, push code to this repository.

c. Create at least 3 branches:

  • master : for deploying on server

  • develop: for developing

  • feature-xxx: branch out from dev to develop new features

d. Create branch for each new features. After finish coding for each new feature, create a ""Pull request"" to ""Develop"" branch and assign @peter/@steward to review the code.

e. The code have to be approved before merge into master branch

  1. Must-have feature

User management feature

can use devise gem for this

Write new blog feature

  • Allow registered user to post new items in a category

Blog display feature

  • Display user's registered blogs in dashboard

  • Display all bogs for all user or guest in index page

Rating and comment features

  • Allow user to add rating star, like and share blog( the number of like, share is sum of the number in our website and social network if any)

  • Allow user to add comment to blog

  • Allow user to share blog to social networks

  • Using jobs to get the number like and share of blog

Searching feature

  • Allow user to search for a blog by category or specifying keyword

Blog on social network

  • User can post their blog to both social networks and our website

  • Customer can check the number of like and share in social network and our website

  • When customer delete or edit blog in our website the post in social network will be synchronized

Top blogs feature

  • Show top hostest blogs in day and week or month.

  • Relate blogs base on category and interested blog

Mobile view

  • Can view web site on mobile, using bootstrap responsive

Batch process (optional)

  • Send mail for user when system have new blog, change or delete, using delay job or sidekiq to run it in background

  • Send mail for user when Admin approved the blog

Blog management

  • Admin can manage blog status (New, Approved, Rejected)

  • Customer can check their blog status

  1. System testing - Automation test

https://github.com/rspec/rspec-rails

  1. Deployment

Deploy your app to heroku

  1. Project management
  • Project code name : Goldenblog

  • Use Github - Zenhub to manage project

  1. System requirement
  • Use Rails version 6.x

  • Using PostgreSQL

  • Github repository

  • Use Bootstrap for layout, template

  • Use Rubocop to check your coding style

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.