Skip to content

A very simple event booking platform built using Laravel

Notifications You must be signed in to change notification settings

steekam/event-titan

Repository files navigation

Event Titan

A simple event booking platform built using Laravel, Blade components and Livewire. This project was part of a take-away project for a technical interview.

Features

  • Basic CRUD functionalities for events.
  • List Upcoming Events from other users.
  • User can make booking for another user's event.
  • User can list their booked events.

Demo

You can access the project using this link. You can use the following test credentials:

Note: If you attempt to register a new account, you may not receive a verification email due to SMTP server constraints.

Run Locally

Clone the project

  git clone https://github.com/steekam/event-titan

Go to the project directory

  cd event-titan

Install dependencies

  npm install
  composer install

Build frontend assets

  npm run dev

Create .env file if it doesn't exist

php -r "file_exists('.env') || copy('.env.example', '.env');"

Generate APP_KEY

php artisan key:generate

Ensure you have created a database and updated the .env file.

Migrate database tables

  php artisan migrate

Optionally seed data into the database

  php artisan db:seed

Start the server

  php artisan serve

Update APP_URL to the URL provided by serve command for the emails to generate correct URLs.

If you seed the application you get test credentials for a single user.

username: [email protected] password: password

Environment Variables

To run this project, you will need to add/update the following environment variables to your .env file

  • MAIL_* for the SMTP server so that email sending for account verification and password reset works.

Running Tests

To run tests, run the following command

  php artisan test

Tech Stack

Client: Laravel Blade Templates, TailwindCSS, AlpineJS

Server: Laravel, Livewire

Authors and Acknowledgement