bandicam.2023-03-24.04-15-35-172.mp4
This is a simple blog posts project built with Laravel. It allows users to create and publish blog posts, view a list of all posts, view individual posts, and leave comments on posts. each user can view his profile and upload his/her image
- Ability to delete posts using the soft delete technique, as well as the ability to restore and destroy them permanently.
- A scheduled job is implemented to delete old posts that are created two years ago, every midnight.
- A slug is created for each post to enhance SEO.
- Users can upload an image for each post.
- Tags can be added for each post, and they can also be deleted.
- Every post has a unique title.
- Login using Github and Google OAuth
- Each user has a limited number of posts.
- Each user can upload their image using the media library.
- Users can update their information such as name, email, address, and photo
comments part implemented using Livewire
Method | End Point | Function |
---|---|---|
GET | /posts | get all posts |
GET | /posts/{id} | get post details |
POST | /posts | create post |
This project makes use of the following packages:
Packages Name | For |
---|---|
Livewire | building dynamic interfaces |
Laravel Ui | authentication |
eloquent-sluggable | creation of slugs |
laravel-tags | taggable behaviour |
Laravel-medialibrary | Associate files with Eloquent models |