Coder Social home page Coder Social logo

number8-frontend-assessment's Introduction

Install

I recommend using node version v20.9.0 or higher and Yarn as package manager.

yarn install

Run

  • Dev
yarn dev
  • Build & Production
yarn build
yarn start

Automated Tests

Run unit tests

yarn test:unit

Run component tests

yarn test:components

How to Test the Application

I really recommend building the application and running it in production mode. (yarn start)

Technical Decisions

  • I didn't understand if it was to fetch the URL to get the JSON or copy into the project, so i went with the easiest way.
  • I used Next.js because i want to have SSR and SSG out of the box. I felt that for this project would be better, I got to pre-render the real estate page and have a better first load time.
  • I went full server side to "fetch" the data (but I'm also really good with client side fetching, <3 tanstack query).
  • I used a component library called MantineUi to help me in development speed.
  • I could used Context to avoid some props drilling, but i didn't want to over engineer the solution.
  • I did some simple tests. Used Vitest to do unit Test, and Cypress to do component tests (Yes, you can use cypress to do component tests, and it's really good)
  • The structure folder is more focused on the feature and code locality.
  • I used Yup + React Hook Form to handle the form, just because I like schema based forms.
  • I went with a really simple design, mostly following the example.
  • I added a simple responsive design, but I didn't go full mobile first.
  • I didn't use any semantic commits; I used GitHub Copilot to write most of the commit messages.

Bonus

  • I added one more feature, if you favorite a real estate, it will show in the card in the list page.

number8-frontend-assessment's People

Contributors

jvitormelo 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.