Git Product home page Git Product logo

newsgrid's Introduction

NewsGrid - News Portal

Introduction

Developed an Online News Portal, that allows various users to easily create, read, bookmark and download news articles. Integrated mPDF, a PHP library which generates PDF files from UTF-8 encoded HTML. Wrote clean, well documented, reusable code and incorporated the best development practices at my best.

Technologies used:

  • Front end: HTML, CSS, JavaScript, Bootstrap (for Admin Panel only)
  • Back end: PHP, MySQL
  • Library: mPDF Library

This project aims to develop a computerized and easy to access the day-to-day news without having to wait. “NewsGrid” is aimed at developing such an efficient website that helps in providing up to date news about various happenings around the world.

Admin login details: 
email - [email protected]
password - Admin123

Module Description

The entire project as a whole can be divided into 4 modules, the four modules being:

Admin Module

  • Admin can modify and delete user account and restrict them from entering the logged-in portal of NewsGrid.
  • Admin can modify and delete Author account and restricting inactive authors from writing new articles on NewsGrid.
  • Admin can add, modify and delete categories under which various articles are written.
  • Admin can delete all the News Articles present in the NewsGrid Portal, decides whether the particular article should stay or not.
  • Admin manages the Trending section of the portal, chooses which article goes under Trending section and is displayed on carousel
  • Admin can manage his account credentials (i.e.) can change password.

Author Module

  • Author can write new articles and post in the NewsGrid portal by selecting the appropriate category in which the article is written and to be displayed.
  • Author can modify and delete articles written by him only.
  • Author can manage his account credentials (i.e.) can change password & name.

User Module

  • User can browse through NewsGrid website and search for articles under various categories present in the portal.
  • User can search for articles based in his preferred categories like Sports, Entertainment, Politics, etc.
  • User can search for a particular article based on specific keywords like title of the article or category name, trending.
  • User can sort articles date wise and view articles posted on particular date of choice or between a span of days.
  • User can also look up the trending articles of the week.
  • User can manage his account credentials (i.e.) can change password.

Premium User Module

  • A Premium User can basically do everything a free user can do. User can browse through NewsGrid website and search for articles under various categories present in the portal.
  • User can search for a particular article based on specific keywords like title of the article or category name, trending, date.
  • Premium User can download an article of his choice in PDF format from any web browser from NewsGrid Portal.
  • Premium User can bookmark an article for future references and all the bookmarked articles are visible separately on the Bookmarks Page.
  • Premium User can manage his account credentials (i.e.) can change password.

Project Diagrams

Activity Diagram

Entity Relationship Diagram

Database Design


Project Screenshots

Home Page

Categories Page

Search Page

Login & Signup Page

Bookmarks Page

Change Password Page

Author Dashboard Page

Add Article Page

Edit Article Page

All Articles Page

Author Change Name Page

Admin Login Page

Admin Manage Articles Page

Admin Manage Category Page


Development setup

1. Retrieve the project (if you haven't done so already)

 $ git clone https://github.com/Anish-U/NewsGrid.git

or download the project via GitHub

2. Move project folder to htdocs folder

if you cannot find the htdocs folder please follow the below links,

3. Restore Database

  • Goto phpMyAdmin and create a Database names news-portal.
  • Now Select Import.
  • Find 'File to import:' section and choose the file 'news-portal.sql' which is located under project folder and hit GO.

4.Setup Database Configurations

  • Go to project folder -> includes -> database.inc.php.
  • Setup your configurations related to MySQL.
    • Eg: Server Name -> localhost, MySQL Username -> root.

5. Start Server

  • Start the server and run http://localhost:8888/Folder_name/index.php (replace the port number 8888 to your port).
  • Alternatively you can also run the command on your terminal
       php -S localhost:8888 (replace the port number to your choice)
    

newsgrid's People

Contributors

anish-u avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

newsgrid's Issues

Missing credentials

It misses the admin credentials to take a look at the admin part, is there a change you could supply it?

Admin Password.

Hi,

We are unable to log in to the admin account. What is the admin login password?. Request you add an option to reset the forgotten password.

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.