Git Product home page Git Product logo

bookflix-personal-project's Introduction

Typing SVG

๐Ÿ›  Technologies I use to code

Postgres Apollo-GraphQL NodeJS React Visual Studio Code GraphQL Prisma TypeScript

๐Ÿ’พ Step by step

This is a practice project to practice using ApolloServer, ApolloClient, Prisma, PostgreSQL, GraphQL, React, Typescript. I chose to set up both the backend and the frontend in order to better assimilate the link between these different technologies.

So I first proceeded to install the backend with ApolloServer, Nexus, Typescript, PostgreSQL and Prisma. This allowed me to establish the connection between the backend and the database, put into production thanks to Heroku, and to create my own book API.

Once the API was ready, I started on the frontend part with React Native, Expo and ApolloGraphQL, exclusively on mobile. This was an opportunity to clone Netflix and give it a different functionality. Thanks to that I was able to see the basic concepts of React Native, the operation of FlatList, View or TextInput. I practiced using Modals, retrieving the data to make it appear on the Modal. With React Native, the search system was very easy to set up.

I really enjoyed working with ApolloGraphQL. I could see the positives of a GraphQL API. No need to go through a URL for a specific action. Just call the schema that corresponds to the action, specify whether it is a mutation or a query and use it in the code. Everything is done in very little code, it's impressive! This project has been the promise of great discoveries.

๐Ÿ”Œ Points to improve

โ˜ Better think my backend. My system of likes is not functional because I did not think beforehand to create a table for the likes in the database. Which would have allowed me to go through the subscriptions. I will have to see this again!

โ˜ Perhaps add a comment system to allow people to express themselves on what they think of such and such a work.

โ˜ Find a way to have an even shorter and cleaner code. Surely there are good practices to have that I am not yet aware of.

โ˜ Add in the Book tables, an array that contains the books of a category. I didn't put a field for a category on the backend side, which would have been good for making multiple list categories like on Netflix.

โ˜ Make a web version of the project

๐Ÿงฌ My references

https://www.udemy.com/course/graphql-bootcamp/

https://www.howtographql.com/react-apollo/0-introduction/

https://www.prisma.io/

https://www.apollographql.com/docs/tutorial/resolvers/

https://nexusjs.org/docs/plugins/prisma/overview

https://www.apollographql.com/docs/react/v2/integrations/react-native/

https://reactnative.dev/docs/style

bookflix-personal-project's People

Contributors

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