Git Product home page Git Product logo

trivia_game's Introduction

Trivia Game

Quiz app for true and false questions. Main functionalities:

  1. Iteractive true or false questions
  2. Random questions fetched from the API
  3. Random images fetched from unsplash
  4. Results screen showing how many you got right

Screenshots

| | |

| | |

Running the project

  • Clone the project:
$ git clone https://github.com/jordanboaz/trivia_game.git
  • Install dependencies:
$ yarn install
  • If ios, install cocoa pods dependencies:
$ cd ios && pod install
  • Execute
$ yarn ios

OR

$ yarn android

APIs

  • The API opentdb was used to fetch random questions.
  • The unsplash API was used to fetch random beuatiful images.

Tech and libraries

Expo

  • Expo was used to facilitate the deliver of the app. Expo is an optional library frequently used on the react native enviroment to deliver fast app without a large setup.

React native

  • O React Native foi utilizado em sua versão 0.63.0. This is the version that runs on expo SDK 39.

TypeScript

  • The app is build using Typescript, it grants bring static typing for javascript, granting us the ability to use the intelisense for our code editor, facilitates the refactoring of code, saves us debuging time and brings more assertiveness when accessing properties of our variables.
  • Interfaces were created with payload responsed from the API, so the whole application is aware of it's data structure.

Main libs:

Code quality

To ensure the code follow the some pattern and is correctly typed, some libs were used:

Patterns

Componentization of reusable code

UI components, like buttons, lists were created to avoid code duplication. The components were create to be completely reusable and they do not contain any business logic.

Separation of concerns

  • A service layer was created and acts as bridge between layers.
  • The redux connects the outworld, the API and our visual layers.

trivia_game's People

Contributors

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