Skip to content

Niel22/blog

Repository files navigation

cat < README.md

Blog Platform

Overview

This Blog Platform is a web application that allows users to create, read, update, and delete blog posts. It features user authentication, a rich text editor, and a clean, responsive design. The platform is built using HTML, CSS, JavaScript, Bootstrap, PHP (Laravel), and MySQL.

Features

User Features:

  • Homepage:

    • Hero section showing recent posts based on their trending status.
    • Today's news section.
    • Top news of the week section.
    • Top trending news of all time section.
  • Post Details Page:

    • Sidebar displaying:
      • All categories.
      • Recent posts.
      • Tags of the viewed post.
      • Related posts.
      • Next and previous posts.
    • Comment section allowing users to comment with their name and email address.
  • Categories:

    • View categories and see posts under each category.
  • Post Search:

    • Ability to search for posts by keywords.
  • Tags:

    • Clickable tags that lead to posts related to that tag.

Dashboard Roles and Features:

  1. Admin Role Features:

    • User Management:

      • Can manage users (Create, Read, Update, Delete users).
      • Assign or remove roles to/from users.
      • Can create, update, and delete user roles.
      • Can create, update, and delete permissions.
      • Assign permissions to different roles.
    • Content Management:

      • Can create and manage categories.
      • Can create, edit, and delete blog posts.
      • Approve or reject blog posts.
      • Can manage all content on the site.
    • Settings & Profile:

      • Can access the settings page.
      • Can edit profile details.
      • Can change password.
      • Can delete their account.
      • Can connect and manage social media accounts (Twitter, Facebook, Instagram).
    • Performance Metrics:

      • View metrics on user registrations.
      • View performance of posts (e.g., how many posts have been made).
  2. Editor Role Features:

    • Content Management:

      • Can view the list of users and categories.
      • Can create posts and publish posts submitted by authors.
      • Posts created by editors are published automatically.
      • Can edit and delete posts (if allowed).
    • Settings & Profile:

      • Can access settings page.
      • Can edit profile details.
      • Can change password.
      • Can delete their account.
      • Can connect and manage social media accounts (Twitter, Facebook, Instagram).
    • Performance Metrics:

      • View metrics on posts published by the editor and authors.
      • View the number of users and posts created.
  3. Author Role Features:

    • Content Management:

      • Can create, edit, and delete posts.
      • Posts must be reviewed and published by an editor or admin before being visible on the blog page.
    • Settings & Profile:

      • Can access settings page.
      • Can edit profile details.
      • Can change password.
      • Can delete their account.
      • Can connect and manage social media accounts (Twitter, Facebook, Instagram).
    • Performance Metrics:

      • View metrics on how many posts the author has created and how they are performing (once published).
  4. Subscriber Role Features:

    • Profile Management:

      • Can edit their profile details.
      • Can change their password.
      • Can delete their account.
      • Can connect and manage social media accounts (Twitter, Facebook, Instagram).
    • Performance Metrics:

      • Can view the content they have interacted with (e.g., liked posts, comments).

General Features Available to All Roles:

  • Profile and Settings:

    • Ability to edit profile details (name, bio, avatar, etc.).
    • Ability to change passwords.
    • Account deletion option.
    • Integration with social media accounts (Twitter, Facebook, Instagram).
  • Filter and Pagination:

    • Filter content (posts and users) by categories, tags, or other custom filters.
    • Pagination available on post and user pages for easier navigation.
  • Performance Metrics:

    • View user growth metrics (how many users have joined over a period).
    • View post performance metrics (number of posts made, views, interactions).
  • Security:

    • Multi-role permissions and restrictions for controlling access to specific content and functionality.
    • Role-based access control (RBAC) for different actions on posts and user management.
  • Audit Logs:

    • Track actions performed by users, including login attempts, profile updates, and content creation.
    • Admin can view audit logs of actions taken by editors, authors, and subscribers.
  • Post & User Management Filters:

    • Filter posts by status (draft, pending, published).
    • Filter users by roles, registration date, activity, etc.
  • Social Media Integration:

    • Users can connect their accounts to social media platforms such as Twitter, Facebook, Instagram.
    • Admin can view and manage social media integrations.

Additional Features:

  • Responsive design for mobile and desktop.
  • Pagination for post lists.
  • Secure authentication (password hashing, CSRF protection).

Technologies Used

Frontend:

  • HTML

  • CSS

  • JavaScript

  • Bootstrap

Backend:

  • PHP (Laravel Framework)

Database:

  • MySQL

Screenshots

Admin Dashboard

Admin Dashboard

Blog Interface

Blog Interface

Contribution

  1. Fork the repository.
  2. Create a new branch for your feature/bugfix.
  3. Submit a pull request with a clear description.

License

This project is licensed under the MIT License.

Credits

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published