ShareInspire Forum is a discussion forum website. It is meant to provide a platform, where people can come together and inspire each other by sharing their thoughts and feelings. It is a personal project that I have built to learn and practise Vue.js and Laravel. You can visit the website at https://share-inspire-forum.herokuapp.com
The website allows users to signup and then login to their accounts, using their username and password.
Users can create new topics in different categories, which display on the pubilc website, once approved by the Site Admin user.
Users can also add, edit or delete their posts to existing topics. Post addition, updation and deletion is done via AJAX requests, so users get immediate feedback, without the page reload.
All signed-in users can join the Chat Room to chat with other users. The Chat Room page shows a list of all users who are there. This feature has been implemented using Laravel Event Broadcasting, Laravel Echo, Vue.js and Pusher.
When users add, edit or delete their posts, all other users get Real-Time updates on their browser windows, without refreshing the page. This has been accomplished using Laravel Event Broadcasting to broadcast server side events to client side via Pusher.
When a new post is added to any Topic, the Topic creater/user gets a new notification via email, and also via Notifications dropdown menu on the top navigation bar. Notifications menu gets updated real-time, without the need to refresh the page. This feature has been implemented using Laravel Notifications to send notifications via email, database and broadcast (via Pusher).
The website also has an Admin Dashboard for the website Admin users. Admin users can approve or disapprove topics. Approved topics are displayed on the main website, whereas disapproved topics are not displayed.
You can also view the latest posts and also, search for the posts using options in the top navigation bar.
Every user has a profile, which lists the topics and posts created by them. The user profile can be viewed by clicking on the link showing username.
ShareInspire Forum has been built using the following:-
- HTML
- CSS
- Bootstrap Framework
- JavaScript
- Vue.js
- Pusher
- Laravel Echo
- PHP
- Laravel Framework 7.x
- MYSQL