Giter Club home page Giter Club logo

desafio-fullstack-foton's Introduction

Fullstack Foton Challenge

This challenge was provided by FotonTech, as a part of its recruitment process.

Technologies used:

Server

  • Typescript
  • GraphQL
    • Apollo Server
    • TypeGraphQL
  • Express
  • MongoDB
    • Mongoose
  • Jest
    • Apollo Server Testing
    • MongoDB Memory Server

Web Client

  • Typescript
  • Next.JS
    • React Hooks
    • React Context API
    • Next Apollo
    • Apollo Client
    • GraphQL
  • Styled Components
  • React Spring
  • Formik
    • Yup
  • Storybook

Getting started

1) Install packages and Configure server and web client

Before starting, you need to install the packages and configuring server and web client by running:

yarn startup

2) Starting server

You need to make sure MongoDB is installed, before starting the server.

You can check if there is a version installed by running:

mongod -version

Finally, you can start the server by running:

yarn dev:server

3) Starting web client

You can start the web client by running:

yarn dev:client

The server must be running in order for the data to be fetched and for the web becoming fully functional.

4) Running tests

You can run tests by running:

yarn test

5) Starting Storybook client

You can interact with isolated components with Storybook. To start, run:

yarn dev:storybook

Challenge Instructions

For the challenge to be fulfilled, I had to comply with the following requirements:

Design/Screens

https://www.figma.com/file/KFElqzD983WNyvMY1SaF0c/book-app?node-id=0%3A1

screens

Minimum Requirements

Books

Adding a book
  • a user should be able to add a book
  • a user should not be able to add a book, if it is missing its title, author or description
Listing books
  • a user should be able to list books
  • a user should be able to load more books
Searching books
  • a user should be able to query books by their titles
Book details
  • a user should be able to view a book details

desafio-fullstack-foton's People

Contributors

brucruz avatar

Stargazers

Alana Ragusa 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.