A simple Twitter clone website that allows users to sign up and log in. They could then create and post short ideas (messages), similar to tweets. The main page, currently, displays all ideas with comments from registered users. This core functionality provides a basic social media experience.
Framework: Laravel
Database: MariaDB
ORM: Eloquent
Template Language: Blade
- Open cmd terminal as administrator and run:
netstat -ano | findstr :3306
- If there is no output means there is no process running on that port
- In that case, skip the following steps
-
If there is any output means a process is running on that port
-
Copy the last number from the output and stop the process:
taskkill /PID number_here /F
- And start MySQL server from the XAMPP Control Panel:
C:\xampp\php
C:\xampp\mysql\bin
C:\ProgramData\ComposerSetup\bin
- Adjust the paths to your specific ones if needed
git clone https://github.com/miray-mustafov/ideas.git
- navigate the terminal to ideas folder:
cd ideas
composer install
copy .env.example .env
php artisan key:generate
php artisan storage:link
- If mysql is correctly added to the system path variables, connect to the server with:
mysql -u root
- Create ideas database with:
create database ideas;
- Ctrl+C to exit the database server
php artisan migrate
php artisan serve
- And visit the website shown on the output
-
Users
- Registration
- Login/Logout
- Profile view/update
- Follow/Unfollow
-
Ideas/Tweets
- Idea view
- Creation with validations
- Update: owner can update
- Deletion: owner can delete
- Searching by keywords within the tweets
-
Comments
- Creation
- authentication middleware is added to most of the routes to ensure that a logged-in user uses the key functionality
- flash messages for success
- db level pagination