Giter Club home page Giter Club logo

book-wise's Introduction

Book Wise

Desafio de fim de curso de 50h da formação React na Rocketseat.

O material do desafio é este Figma.

Tomei algumas decisões para montar o projeto:

  • Estilização com Tailwind e Tailwind Variants
  • Next.js como framework para servir a aplicação
  • Typescript, para ficar tudo bem tipado
  • Front com React, e Back com API routes do Next
  • Autenticação com NextAuth.js

Destaques

Desenho dos componentes

Componentes de UI bem estruturados e dinâmicos, para facilitar a estilização da aplicação, usando o tailwind-variants para ficar mais organizado que muitas classes em elementos HTML, exemplo para o componente básico de texto, que aceita um atributo para ser servido em diferentes elementos HTML:

import { ComponentProps, ElementType } from 'react'

import { tv, type VariantProps } from 'tailwind-variants'

export const text = tv({
  base: 'font-default text-gray-200  leading-base',

  variants: {
    size: {
      md: 'text-md',
      sm: 'text-sm',
    },
  },

  defaultVariants: {
    size: 'md',
  },
})

export interface TextProps
  extends ComponentProps<'span'>,
    VariantProps<typeof text> {
  as?: ElementType
}

export function Text({
  as: Tag = 'span',
  size,
  className,
  ...props
}: TextProps) {
  return <Tag {...props} className={text({ size, className })} />
}

Base de livros

Para dar mais vida ao sistema, fiz um seed de dados usando a API de livros do Google, assim podemos navegar em livros reais completos, para simular a interação para cadastrar reviews

book-wise's People

Contributors

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