8000 GitHub - skifahrer/bbg-home-challenge: take home challenge
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

skifahrer/bbg-home-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

BBG take-home-challenge

Description

We appreciate your interest in joining our BBG gang as a Full-Stack Developer. This take-home challenge will help us evaluate your coding skills, problem-solving approach, and ability to create functional web applications.

Objective

Build a basic product catalog application that allows users to:

  • View a list of products
  • See details of individual products
  • Filter products by category

Requirements

Backend Development

Technology Stack:

  • PHP with a lightweight framework of your choice
  • Use a SQL database (MySQL or PostgreSQL)

Features to Implement:

  1. Create an API with the following endpoints:

    • GET /api/products - List all products with pagination (limit 10 per page)
    • GET /api/products/:id - Get a single product by ID
    • GET /api/categories - List all product categories
  2. Data Requirements:

    • Create a simple database schema for products with at least these fields:
      • id
      • name
      • price
      • description
      • category_id
      • image_url (can be a placeholder)
    • Create a categories table with at least:
      • id
      • name
    • Seed the database with at least 15 sample products across 3-5 categories

Frontend Development

Technology Stack:

  • Use your preferred frontend framework/library or pure JS with CS

Features to Implement:

  1. Product Listing Page:

    • Display products in a grid with basic information (name, price, image)
    • Show pagination controls
    • Includes a simple dropdown to filter by category
  2. Product Detail Page:

    • Show complete product information when a user clicks on a product
    • Include a "Back to Listing" button

Optional features to Implement

  • Multilingual support
  • Implement search functionality to filter products.
  • Implement shopping cart.
  • Implement checkout process.

Requirements for Both:

  • Clean, readable code with appropriate comments
  • Basic error handling
  • Responsive design (mobile-friendly)

Evaluation Criteria

Your submission will be evaluated based on:

  • Functionality (does it work as expected?)
  • Code quality and organization
  • Proper use of the selected technologies
  • UI/UX considerations
  • Documentation quality

Submission

Please submit your code as Pull Request to this repository.

Development

Quick Start

Start mysql database

  docker compose up

About

take home challenge

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0