-
Biznes i ekonomia
- Bitcoin
- Bizneswoman
- Coaching
- Controlling
- E-biznes
- Ekonomia
- Finanse
- Giełda i inwestycje
- Kompetencje osobiste
- Komputer w biurze
- Komunikacja i negocjacje
- Mała firma
- Marketing
- Motywacja
- Multimedialne szkolenia
- Nieruchomości
- Perswazja i NLP
- Podatki
- Polityka społeczna
- Poradniki
- Prezentacje
- Przywództwo
- Public Relation
- Raporty, analizy
- Sekret
- Social Media
- Sprzedaż
- Start-up
- Twoja kariera
- Zarządzanie
- Zarządzanie projektami
- Zasoby ludzkie (HR)
-
Dla dzieci
-
Dla młodzieży
-
Edukacja
-
Encyklopedie, słowniki
-
E-prasa
-
Historia
-
Informatyka
- Aplikacje biurowe
- Aplikacje biznesowe
- Bazy danych
- Bioinformatyka
- Biznes IT
- CAD/CAM
- Digital Lifestyle
- DTP
- Elektronika
- Fotografia cyfrowa
- Grafika komputerowa
- Gry
- Hacking
- Hardware
- IT w ekonomii
- Pakiety naukowe
- Podręczniki szkolne
- Podstawy komputera
- Programowanie
- Programowanie mobilne
- Serwery internetowe
- Sieci komputerowe
- Start-up
- Systemy operacyjne
- Sztuczna inteligencja
- Technologia dla dzieci
- Webmasterstwo
-
Inne
-
Języki obce
-
Kultura i sztuka
-
Lektury szkolne
-
Literatura
- Antologie
- Ballada
- Dla dorosłych
- Dramat
- Dzienniki, pamiętniki, listy
- Epos, epopeja
- Esej
- Fantastyka i science-fiction
- Felietony
- Fikcja
- Humor, satyra
- Inne
- Klasyczna
- Kryminał
- Literatura faktu
- Literatura piękna
- Mity i legendy
- Nobliści
- Nowele
- Obyczajowa
- Okultyzm i magia
- Opowiadania
- Pamiętniki
- Podróże
- Poemat
- Poezja
- Polityka
- Popularnonaukowa
- Powieść
- Powieść historyczna
- Proza
- Przygodowa
- Publicystyka
- Reportaż
- Romans i literatura obyczajowa
- Sensacja
- Thriller, Horror
- Wywiady i wspomnienia
-
Nauki przyrodnicze
-
Nauki społeczne
-
Podręczniki szkolne
-
Popularnonaukowe i akademickie
- Archeologia
- Bibliotekoznawstwo
- Filmoznawstwo
- Filologia
- Filologia polska
- Filozofia
- Finanse i bankowość
- Geografia
- Gospodarka
- Handel. Gospodarka światowa
- Historia i archeologia
- Historia sztuki i architektury
- Kulturoznawstwo
- Lingwistyka
- Literaturoznawstwo
- Logistyka
- Matematyka
- Medycyna
- Nauki humanistyczne
- Pedagogika
- Pomoce naukowe
- Popularnonaukowa
- Pozostałe
- Psychologia
- Socjologia
- Teatrologia
- Teologia
- Teorie i nauki ekonomiczne
- Transport i spedycja
- Wychowanie fizyczne
- Zarządzanie i marketing
-
Poradniki
-
Poradniki do gier
-
Poradniki zawodowe i specjalistyczne
-
Prawo
- BHP
- Historia
- Kodeks drogowy. Prawo jazdy
- Nauki prawne
- Ochrona zdrowia
- Ogólne, kompendium wiedzy
- Podręczniki akademickie
- Pozostałe
- Prawo budowlane i lokalowe
- Prawo cywilne
- Prawo finansowe
- Prawo gospodarcze
- Prawo gospodarcze i handlowe
- Prawo karne
- Prawo karne. Przestępstwa karne. Kryminologia
- Prawo międzynarodowe
- Prawo międzynarodowe i zagraniczne
- Prawo ochrony zdrowia
- Prawo oświatowe
- Prawo podatkowe
- Prawo pracy i ubezpieczeń społecznych
- Prawo publiczne, konstytucyjne i administracyjne
- Prawo rodzinne i opiekuńcze
- Prawo rolne
- Prawo socjalne, prawo pracy
- Prawo Unii Europejskiej
- Przemysł
- Rolne i ochrona środowiska
- Słowniki i encyklopedie
- Zamówienia publiczne
- Zarządzanie
-
Przewodniki i podróże
- Afryka
- Albumy
- Ameryka Południowa
- Ameryka Środkowa i Północna
- Australia, Nowa Zelandia, Oceania
- Austria
- Azja
- Bałkany
- Bliski Wschód
- Bułgaria
- Chiny
- Chorwacja
- Czechy
- Egipt
- Europa
- Francja
- Góry
- Grecja
- Hiszpania
- Holandia
- Islandia
- Litwa
- Mapy, Plany miast, Atlasy
- Miniprzewodniki
- Niemcy
- Podróże aktywne
- Polska
- Portugalia
- Pozostałe
- Rosja
- Rumunia
- Słowacja
- Słowenia
- Szwecja
- Świat
- Turcja
- Ukraina
- Węgry
- Wielka Brytania
- Włochy
-
Psychologia
- Filozofie życiowe
- Komunikacja międzyludzka
- Mindfulness
- Ogólne
- Perswazja i NLP
- Psychologia akademicka
- Psychologia duszy i umysłu
- Psychologia pracy
- Relacje i związki
- Rodzicielstwo i psychologia dziecka
- Rozwiązywanie problemów
- Rozwój intelektualny
- Sekret
- Seksualność
- Uwodzenie
- Wygląd i wizerunek
- Życiowe filozofie
-
Religia
-
Sport, fitness, diety
-
Technika i mechanika
-
Biznes i ekonomia
- Bitcoin
- Bizneswoman
- Coaching
- E-biznes
- Ekonomia
- Finanse
- Giełda i inwestycje
- Kompetencje osobiste
- Komunikacja i negocjacje
- Mała firma
- Marketing
- Motywacja
- Nieruchomości
- Perswazja i NLP
- Poradniki
- Prezentacje
- Przywództwo
- Public Relation
- Sekret
- Social Media
- Sprzedaż
- Start-up
- Twoja kariera
- Zarządzanie
- Zarządzanie projektami
- Zasoby ludzkie (HR)
-
Dla dzieci
-
Dla młodzieży
-
Edukacja
-
Encyklopedie, słowniki
-
Historia
-
Informatyka
-
Inne
-
Języki obce
-
Kultura i sztuka
-
Lektury szkolne
-
Literatura
- Antologie
- Ballada
- Dla dorosłych
- Dramat
- Dzienniki, pamiętniki, listy
- Epos, epopeja
- Esej
- Fantastyka i science-fiction
- Felietony
- Fikcja
- Humor, satyra
- Inne
- Klasyczna
- Kryminał
- Literatura faktu
- Literatura piękna
- Nobliści
- Nowele
- Obyczajowa
- Opowiadania
- Pamiętniki
- Podróże
- Poezja
- Polityka
- Popularnonaukowa
- Powieść
- Powieść historyczna
- Proza
- Przygodowa
- Publicystyka
- Reportaż
- Romans i literatura obyczajowa
- Sensacja
- Thriller, Horror
- Wywiady i wspomnienia
-
Nauki przyrodnicze
-
Nauki społeczne
-
Popularnonaukowe i akademickie
-
Poradniki
-
Prawo
-
Przewodniki i podróże
-
Psychologia
- Filozofie życiowe
- Komunikacja międzyludzka
- Mindfulness
- Ogólne
- Perswazja i NLP
- Psychologia akademicka
- Psychologia duszy i umysłu
- Psychologia pracy
- Relacje i związki
- Rodzicielstwo i psychologia dziecka
- Rozwiązywanie problemów
- Rozwój intelektualny
- Sekret
- Seksualność
- Uwodzenie
- Wygląd i wizerunek
- Życiowe filozofie
-
Religia
-
Sport, fitness, diety
-
Bazy danych
-
Big Data
-
Biznes i ekonomia
-
Cyberbezpieczeństwo
-
Data Science
-
DevOps
-
Dla dzieci
-
Elektronika
-
Grafika/Wideo/CAX
-
Gry
-
Microsoft Office
-
Narzędzia programistyczne
-
Programowanie
-
Rozwój osobisty
-
Sieci komputerowe
-
Systemy operacyjne
-
Testowanie oprogramowania
-
Urządzenia mobilne
-
UX/UI
-
Web development
React and GraphQL, when combined, provide you with a very dynamic, efficient, and stable tech stack to build web-based applications. GraphQL is a modern solution for querying an API that represents an alternative to REST and is the next evolution in web development.
This book guides you in creating a full-stack web application from scratch using modern web technologies such as Apollo, Express.js, Node.js, and React. First, you'll start by configuring and setting up your development environment. Next, the book demonstrates how to solve complex problems with GraphQL, such as abstracting multi-table database architectures and handling image uploads using Sequelize. You'll then build a complete Graphbook from scratch. While doing so, you'll cover the tricky parts of connecting React to the backend, and maintaining and synchronizing state. In addition to this, you'll also learn how to write Reusable React components and use React Hooks. Later chapters will guide you through querying data and authenticating users in order to enable user privacy. Finally, you'll explore how to deploy your application on AWS and ensure continuous deployment using Docker and CircleCI.
By the end of this web development book, you'll have learned how to build and deploy scalable full-stack applications with ease using React and GraphQL.
- Full-Stack Web Development with GraphQL and React
- Second Edition
- Contributors
- About the author
- About the reviewer
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Share Your Thoughts
- Section 1: Building the Stack
- Chapter 1: Preparing Your Development Environment
- Technical requirements
- Understanding the application architecture
- The basic setup
- Installing and configuring Node.js
- Setting up React
- Preparing and configuring webpack
- Rendering your first React component
- Rendering arrays from React state
- CSS with webpack
- Event handling and state updates with React
- Controlling document heads with React Helmet
- Production build with webpack
- Useful development tools
- Summary
- Chapter 2: Setting Up GraphQL with Express.js
- Technical requirements
- Getting started with Node.js and Express.js
- Setting up Express.js
- Running Express.js in development
- Routing in Express.js
- Serving our production build
- Using Express.js middleware
- Installing important middleware
- Express Helmet
- Compression with Express.js
- CORS in Express.js
- Combining Express.js with Apollo
- Writing your first GraphQL schemas
- Implementing GraphQL resolvers
- Sending GraphQL queries
- Using multiple types in GraphQL schemas
- Writing your first GraphQL mutation
- Backend debugging and logging
- Logging in Node.js
- Debugging with Postman
- Summary
- Chapter 3: Connecting to the Database
- Technical requirements
- Using databases in GraphQL
- Installing MySQL for development
- Creating a database in MySQL
- Integrating Sequelize into our Node.js stack
- Connecting to a database with Sequelize
- Using a configuration file with Sequelize
- Writing database models
- Your first database model
- Your first database migration
- Importing models with Sequelize
- Seeding data with Sequelize
- Using Sequelize with GraphQL
- Global database instance
- Running the first database query
- One-to-one relationships in Sequelize
- Updating the table structure with migrations
- Model associations in Sequelize
- Seeding foreign key data
- Mutating data with Sequelize
- Many-to-many relationships
- Model and migrations
- Chats and messages in GraphQL
- Seeding many-to-many data
- Creating a new chat
- Creating a new message
- Summary
- Section 2: Building the Application
- Chapter 4: Hooking Apollo into React
- Technical requirements
- Installing and configuring Apollo Client
- Installing Apollo Client
- Testing Apollo Client
- Binding Apollo Client to React
- Using Apollo Client in React
- Querying in React with Apollo Client
- Mutating data with Apollo Client
- Apollo useMutation Hook
- Updating the UI with Apollo Client
- Implementing chats and messages
- Fetching and displaying chats
- Fetching and displaying messages
- Sending messages through mutations
- Pagination in React and GraphQL
- Debugging with the Apollo Client Devtools
- Summary
- Chapter 5: Reusable React Components and React Hooks
- Technical requirements
- Introducing React patterns
- Controlled components
- Functional components
- Conditional rendering
- Rendering child components
- Structuring our React application
- The React file structure
- Efficient Apollo React components
- Extending Graphbook
- The React context menu
- The React application bar
- The React Context API versus Apollo Consumer
- Documenting React applications
- Setting up React Styleguidist
- React PropTypes
- Summary
- Chapter 6: Authentication with Apollo and React
- Technical requirements
- What are JSON Web Tokens?
- localStorage versus cookies
- Authentication with GraphQL
- Apollo login mutation
- The React login form
- Apollo signup mutation
- React signup form
- Authenticating GraphQL requests
- Accessing the user context from resolver functions
- Logging out using React
- Summary
- Chapter 7: Handling Image Uploads
- Technical requirements
- Setting up Amazon Web Services
- Configuring an AWS S3 bucket
- Generating AWS access keys
- Uploading images to Amazon S3
- GraphQL image upload mutation
- React image cropping and uploading
- Summary
- Chapter 8: Routing in React
- Technical requirements
- Setting up React Router
- Installing React Router
- Implementing your first route
- Secured routes
- Catch-all routes in React Router
- Advanced routing with React Router
- Parameters in routes
- Querying the user profile
- Programmatic navigation in React Router
- Remembering the redirect location
- Summary
- Chapter 9: Implementing Server-Side Rendering
- Technical requirements
- Introducing SSR
- Setting up SSR in Express.js to render React on the server
- Authentication with SSR
- Running Apollo queries with SSR
- Summary
- Chapter 10: Real-Time Subscriptions
- Technical requirements
- Using GraphQL with WebSockets
- Digging deeper into Apollo subscriptions
- Subscriptions on Apollo Server
- Subscriptions on Apollo Client
- Authentication with Apollo subscriptions
- Notifications with Apollo subscriptions
- Summary
- Chapter 11: Writing Tests for React and Node.js
- Technical requirements
- Testing with Mocha
- Our first Mocha test
- Starting the backend with Mocha
- Verifying the correct routing
- Testing the GraphQL API with Mocha
- Testing the authentication
- Testing authenticated requests
- Testing React with Enzyme
- Summary
- Section 3: Preparing for Deployment
- Chapter 12: Continuous Deployment with CircleCI and AWS
- Technical requirements
- Preparing the final production build
- Setting up Docker
- What is Docker?
- Installing Docker
- Dockerizing your application
- Building and running Docker containers
- Multi-stage Docker production builds
- Amazon RDS
- Configuring continuous integration
- Deploying applications to Amazon ECS
- Setting up CircleCI with Amazon ECR and ECS
- Summary
- Why subscribe?
- Other Books You May Enjoy
- Packt is searching for authors like you
- Tytuły: Full-Stack Web Development with GraphQL and React - Second Edition
- Autor: Sebastian Grebe
- Tytuł oryginału: Full-Stack Web Development with GraphQL and React - Second Edition
- ISBN Ebooka: 9781801079174, 9781801079174
- Data wydania: 2022-02-28
- Identyfikator pozycji: e_2t52
-
Kategorie: