Skip to content

SimpleStream/php.code-challenge

Repository files navigation

Code Challenge

Role Full Stack Laravel PHP Developer
Department Web Development
Reports to Software Development Manager
Time Allocation 1h

Overview

The purpose of this code test is to help us understand your Laravel/Livewire technical skills and style of coding

We are looking at how you approach a problem and how closely you can follow a specification. Remember to show off your ability to write readable code that is maintainable and scalable.

If you struggle with understanding the requirements, please ask so that we can assist you.

Project

We have set up the following project for you

  • Laravel 9 project with HTML templates for the table and booking form
    • After setting up the project, you should be able to see the home page by visiting your local project URL (https://simplestream.test) (Please see below image below)
  • Booking table and form HTML templates

Screenshot 2024-09-06 at 12 16 03

Requirements

  1. Install Laravel dependencies and Livewire 2 package

  2. Set up/Configure Livewire

  3. For the database, the project is set up to use MySql (DBngin and TablePlus are pre-installed)

  4. Build a Livewire Booking form component that consists of:

    1. A table: to list all the created bookings
    2. A form: to create bookings and save them into the database. The form will have the following fields:
      1. Title (string)
      2. Start Time (DateTime)
      3. End Time (DateTime)
    3. Implement validation
  5. Next you are required to integrate FlatPickr and convert Start Time and End Time HTML date inputs to use the JavaScript date picker using AlpineJS and Livewire.

Bonus tasks

  • Implement pagination on the table, 10 bookings per page
  • Table should update/refresh when new booking is added

About

Simplestream PHP Code Challenge

Resources

Stars

Watchers

Forks

Contributors

Languages