GithubHelp home page GithubHelp logo

fullstack-team-sprint's Introduction

Fullstack-team-sprint

Create a Community Event Space Booking App client that interacts with a RESTful API using React.

Technical Requirements

Create an Event Space Booking application where users can:

  • View all event spaces
  • Create an event space
  • View space bookings

Booking Management:

  • View all bookings
  • Book an event space
  • Cancel booking
  • Find available spaces (optional extra challenge)

Notes:

  • Feel free to use 3rd-party libraries or packages for functionality or styling. We recommend using Bootstrap, Material UI, or similar for app styling.

Database

Create a database with 2 tables: EventSpace and Booking. The tables should have identity columns for the IDs and any necessary columns based on requirements and payloads below.

API

Create a RESTful API service with the following endpoints that read and write to the database, accepting and returning JSON payloads.

Method Endpoint Description Example JSON Body Payload
GET /api/meeting-rooms List all meeting rooms n/a
POST /api/meeting-rooms Create a meeting room
All fields are required
{
    "name": "Meeting Room 1",
    "capacity": 3,
    "floor": 22
}
GET /api/meeting-rooms/:id Retrieve a meeting room by id n/a
GET /api/meeting-rooms/:id/bookings Retrieve all future bookings of a meeting room n/a
GET /api/bookings List all future bookings n/a
GET /api/bookings/:id Retrieve a booking by id n/a
POST /api/bookings Create a booking for a meeting room
All fields are required except attendees
Validates that room is available to book
{
    "meetingName": "Scrum Standup",
    "meetinRoomId": 2,
    "startDate": "2022-03-23T17:00:00.000Z",
    "endDate": "2022-03-23T17:30:00.000Z",
    "attendees": "[email protected], [email protected]"
}
DELETE /api/bookings/:id Cancel a booking by id n/a
POST /api/meeting-rooms/available Extra challenge:
Retrieve available rooms by search criteria
startDate and endDate are required
{
    "startDate": "2022-03-23T17:00:00.000Z",
    "endDate": "2022-03-23T17:30:00.000Z",
    "floor": 22,
    "capacity": 3
}

Wireframes

Your application should follow the provided wireframse listed in FullsTackSprintWireframes.pdf

App Pages/Views

Community Event Space Booking App Pages and Views

1. Index Page for Event Spaces

  • Lists all available event spaces.
  • Includes details like space name, capacity, location, and a thumbnail image.
  • Clickable event spaces navigate to their specific show page.

2. Index Page for Bookings

  • Displays a list of all existing bookings.
  • Shows details such as event name, booked space, date, time, and attendees.
  • Each booking links to a detailed show page.

3. Form Page for Creating a New Event Space

  • A form to add a new event space, typically for administrators or managers.
  • Fields include space name, capacity, location, and image upload options.
  • New spaces are added to the Index Page for Event Spaces upon submission.

4. Show Page for Each Event Space

  • Provides detailed information about a specific event space.
  • Details include name, capacity, location, images, and a description.
  • May show availability and include a booking form.

5. Show Page for Each Individual Booking

  • Detailed view of a specific booking.
  • Displays information like the event name, date and time, space used, and attendees.
  • Option for modifying or confirming bookings can be considered.

6. Booking Form (on Event Space Show Page)

  • A form to book an event space.
  • Fields for event name, date and time, number of attendees, and special requirements.
  • Bookings are added to the Index Page for Bookings and linked to the event space.

Note: Each page should have consistent navigation for ease of use. Responsive design for various devices is recommended for an enhanced user experience.

Fullstack Sprint Teams

  1. Keith Camacho, Davon Bridgett, Jalal Jonaid

  2. Michael Caldwell, Dwayne Jones, Joseph Carter, Nicole Slater

  3. Anthony Huarneck, Michael Kleemoff, Aisha Kleemoff, Alexander Tsiklidis

  4. Shanice Griffin, Sung Yi, Gen Lara, Tonesha Rose

  5. Erick Tolentino, Joram Mercado, Elisaul Bautista

fullstack-team-sprint's People

Contributors

mckiernantim avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.