Skip to content

Replicating airbnb following the atomic design principles...

Notifications You must be signed in to change notification settings

kokiebisu/4irbnb

Repository files navigation

airbnb


Build Status on CircleCI Build Status on CircleCI

This is my second iteration creating a replica of Airbnb. The goal for this project is to migrate into using Golang and follow the test driven development approach.

Intro

I created a replica in the past and now I am starting a new one by taking approaches I have regretted not taking for the past project. I have experienced numerous pain points as the project got bigger. Some of the pain points were the following:

  • Creating duplicate components unnecessarily
  • Gathering all the code in one file for multiple purposes (this can result in slow performance on the browser)
  • Not using React hooks effectively for optimized performance

To fix these problems I decided to take a complete different development flow. I focused into component driven development and a more test driven approach.

Table of contents

Getting Started

It's really easy. But you must have docker installed.:

docker-compose build

Design System

Check it out here

Docs

https://kokiebisu.github.io/4irbnb/

References

Keywords

  • Component Driven Development

Naming

  • can~: Criterias to do a certain task. If False then disabled. (Ex. canProceedToNextPage)
  • handle~: Used for functions triggered in Segments blocks. (Ex. handleRedirectToNextPage)
  • is~: Variable name used for boolean type props (Ex. isExpanded)

Tech Stacks

Stacks
Typescript Superset of Javascript
React Library to create reusable UI components
Storybook Design System tool