舉報

會員
Hands-On Full-Stack Web Development with GraphQL and React
React,oneofthemostwidelyusedJavaScriptframeworks,allowsdeveloperstobuildfastandscalablefrontendapplicationsforanyusecase.GraphQListhemodernwayofqueryinganAPI.ItrepresentsanalternativetoRESTandisthenextevolutioninwebdevelopment.Combiningthesetworevolutionarytechnologieswillgiveyouafuture-proofandscalablestackyoucanstartbuildingyourbusinessaround.ThisbookwillguideyouinimplementingapplicationsbyusingReact,Apollo,Node.jsandSQL.We'llfocusonsolvingcomplexproblemswithGraphQL,suchasabstractingmulti-tabledatabasearchitecturesandhandlingimageuploads.Ourclient,andserverwillbepoweredbyApollo.FinallywewillgoaheadandbuildacompleteGraphbook.Whilebuildingtheapp,we'llcoverthetrickypartsofconnectingReacttothebackend,andmaintainingandsynchronizingstate.We'lllearnallaboutqueryingdataandauthenticatingusers.We'llwritetestcasestoverifythefrontendandbackendfunctionalityforourapplicationandcoverdeployment.Bytheendofthebook,youwillbeproficientinusingGraphQLandReactforyourfull-stackdevelopmentrequirements.
最新章節
- Leave a review - let other readers know what you think
- Other Books You May Enjoy
- Summary
- Deploying applications to Heroku
- Configuring Continuous Integration
- Amazon Relational Database Service
品牌:中圖公司
上架時間:2021-07-02 12:27:30
出版社:Packt Publishing
本書數字版權由中圖公司提供,并由其授權上海閱文信息技術有限公司制作發行
- Leave a review - let other readers know what you think 更新時間:2021-07-02 13:21:17
- Other Books You May Enjoy
- Summary
- Deploying applications to Heroku
- Configuring Continuous Integration
- Amazon Relational Database Service
- Multi-stage Docker production builds
- Building and running Docker containers
- Writing your first Dockerfile
- Dockerizing your application
- Installing Docker
- What is Docker?
- Setting up Docker
- Code-splitting with SSR
- Code-splitting with React Loadable and webpack
- Preparing the final production build
- Continuous Deployment with CircleCI and Heroku
- Summary
- Caching with Apollo Server and the Client
- Error tracking with Apollo Engine
- Performance metrics with Apollo Engine
- Analyzing schemas with Apollo Engine
- Setting up Apollo Engine
- Optimizing GraphQL with Apollo Engine
- Summary
- Testing React with Enzyme
- Testing authenticated requests
- Testing the authentication
- Testing GraphQL with Mocha
- Verifying the correct routing
- Starting the back end with Mocha
- Our first Mocha test
- Testing with Mocha
- Writing Tests
- Summary
- Notifications with Apollo Subscriptions
- Authentication with Apollo Subscriptions
- Subscriptions on the Apollo Client
- Subscriptions on the Apollo Server
- Apollo Subscriptions
- GraphQL and WebSockets
- Real-Time Subscriptions
- Summary
- Running Apollo queries with SSR
- Authentication with SSR
- SSR in Express.js
- Introduction to server-side rendering
- Implementing Server-Side Rendering
- Summary
- Remembering the redirect location
- Programmatic navigation in React Router
- Querying the user profile
- Parameters in routes
- Advanced routing with React Router
- Catch-all routes in React Router
- Secured routes
- Implementing your first route
- Installing React Router
- Setting up React Router
- Routing in React
- Summary
- React image cropping and uploading
- GraphQL image upload mutation
- Uploading images to Amazon S3
- Generating AWS access keys
- Creating an AWS S3 bucket
- Setting up Amazon Web Services
- Handling Image Uploads
- Summary
- Logging out using React
- CurrentUser GraphQL query
- Chats and messages
- Accessing the user context from resolver functions
- Authenticating GraphQL requests
- React sign up form
- Apollo sign up mutation
- The React login form
- Apollo login mutation
- Authentication with GraphQL
- localStorage versus cookie
- JSON Web Tokens
- Authentication with Apollo and React
- Summary
- React PropTypes
- Setting up React Styleguidist
- Documenting React applications
- Apollo Consumer
- The React Context API
- The React Context API versus Apollo Consumer
- The React application bar
- The Apollo deletePost mutation
- The GraphQL updatePost mutation
- React helper components
- FontAwesome in React
- The React context menu
- Extending Graphbook
- The Apollo Mutation component
- The Apollo Query component
- Efficient Apollo React components
- The React file structure
- Structuring our React application
- Rendering child components
- Conditional rendering
- Stateless functions
- Controlled components
- Introducing React patterns
- Reusable React Components
- Summary
- Debugging with the Apollo Client Developer Tools
- Pagination in React and GraphQL
- Sending messages through Mutations
- Fetching and displaying messages
- Fetching and displaying chats
- Implementing chats and messages
- Polling with the Query component
- Optimistic UI
- Updating the Apollo cache
- Refetching queries
- Updating the UI with the Apollo Client
- The Apollo Mutation component
- The Apollo Mutation HoC
- Mutations with the Apollo Client
- The Apollo Query component
- Apollo HoC query
- Querying in React with the Apollo Client
- Using the Apollo Client in React
- Binding the Apollo Client to React
- Testing the Apollo Client
- Installing Apollo Client
- Setting up Apollo Client
- Integrating React into the Back end with Apollo
- Summary
- Creating a new message
- Creating a new chat
- Seeding many-to-many data
- Chats and messages in GraphQL
- Message model
- Chat model
- Model and migrations
- Many-to-many relationships
- Mutating data with Sequelize
- Seeding foreign key data
- Model associations in Sequelize
- Updating the table structure with migrations
- One-to-one relationships in Sequelize
- Running the first database query
- Global database instance
- Using Sequelize with Apollo
- Seeding data with Sequelize
- Importing models with Sequelize
- Your first database migration
- Your first database model
- Writing database models
- Using a configuration file with Sequelize
- Connecting to a database with Sequelize
- Integrating Sequelize into our stack
- Creating a database in MySQL
- Installing MySQL for development
- Using databases in GraphQL
- Connecting to The Database
- Summary
- Debugging with Postman
- Logging in Node.js
- Back end debugging and logging
- Writing your first GraphQL mutation
- Using multiples types in GraphQL schemas
- Sending GraphQL queries
- Implementing GraphQL resolvers
- Writing your first GraphQL schema
- Combining Express.js with Apollo
- CORS in Express.js
- Compression with Express.js
- Express Helmet
- Installing important middleware
- Using Express.js middleware
- Serving our production build
- Routing in Express.js
- Running Express.js in development
- Setting up Express.js
- Node.js and Express.js
- Setting up GraphQL with Express.js
- Summary
- Analyzing bundle size
- Useful development tools
- Production build with webpack
- Controlling document heads with React Helmet
- Event handling and state updates with React
- CSS with webpack
- Rendering arrays from React state
- Render your first React component
- Preparing and configuring webpack
- Setting up React
- Installing and configuring Node.js
- The basic setup
- Application architecture
- Preparing Your Development Environment
- Reviews
- Get in touch
- Conventions used
- Download the example code files
- To get the most out of this book
- What this book covers
- Who this book is for
- Preface
- Packt is searching for authors like you
- About the reviewer
- About the author
- Contributors
- Packt.com
- Why subscribe?
- www.PacktPub.com
- Hands-On Full-Stack Web Development with GraphQL and React
- Copyright and Credits
- Title Page
- coverpage
- coverpage
- Title Page
- Copyright and Credits
- Hands-On Full-Stack Web Development with GraphQL and React
- www.PacktPub.com
- Why subscribe?
- Packt.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Conventions used
- Get in touch
- Reviews
- Preparing Your Development Environment
- Application architecture
- The basic setup
- Installing and configuring Node.js
- Setting up React
- Preparing and configuring webpack
- Render 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
- Analyzing bundle size
- Summary
- Setting up GraphQL with Express.js
- 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 schema
- Implementing GraphQL resolvers
- Sending GraphQL queries
- Using multiples types in GraphQL schemas
- Writing your first GraphQL mutation
- Back end debugging and logging
- Logging in Node.js
- Debugging with Postman
- Summary
- Connecting to The Database
- Using databases in GraphQL
- Installing MySQL for development
- Creating a database in MySQL
- Integrating Sequelize into our 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 Apollo
- 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
- Chat model
- Message model
- Chats and messages in GraphQL
- Seeding many-to-many data
- Creating a new chat
- Creating a new message
- Summary
- Integrating React into the Back end with Apollo
- Setting up Apollo Client
- Installing Apollo Client
- Testing the Apollo Client
- Binding the Apollo Client to React
- Using the Apollo Client in React
- Querying in React with the Apollo Client
- Apollo HoC query
- The Apollo Query component
- Mutations with the Apollo Client
- The Apollo Mutation HoC
- The Apollo Mutation component
- Updating the UI with the Apollo Client
- Refetching queries
- Updating the Apollo cache
- Optimistic UI
- Polling with the Query component
- 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 Developer Tools
- Summary
- Reusable React Components
- Introducing React patterns
- Controlled components
- Stateless functions
- Conditional rendering
- Rendering child components
- Structuring our React application
- The React file structure
- Efficient Apollo React components
- The Apollo Query component
- The Apollo Mutation component
- Extending Graphbook
- The React context menu
- FontAwesome in React
- React helper components
- The GraphQL updatePost mutation
- The Apollo deletePost mutation
- The React application bar
- The React Context API versus Apollo Consumer
- The React Context API
- Apollo Consumer
- Documenting React applications
- Setting up React Styleguidist
- React PropTypes
- Summary
- Authentication with Apollo and React
- JSON Web Tokens
- localStorage versus cookie
- Authentication with GraphQL
- Apollo login mutation
- The React login form
- Apollo sign up mutation
- React sign up form
- Authenticating GraphQL requests
- Accessing the user context from resolver functions
- Chats and messages
- CurrentUser GraphQL query
- Logging out using React
- Summary
- Handling Image Uploads
- Setting up Amazon Web Services
- Creating an AWS S3 bucket
- Generating AWS access keys
- Uploading images to Amazon S3
- GraphQL image upload mutation
- React image cropping and uploading
- Summary
- Routing in React
- 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
- Implementing Server-Side Rendering
- Introduction to server-side rendering
- SSR in Express.js
- Authentication with SSR
- Running Apollo queries with SSR
- Summary
- Real-Time Subscriptions
- GraphQL and WebSockets
- Apollo Subscriptions
- Subscriptions on the Apollo Server
- Subscriptions on the Apollo Client
- Authentication with Apollo Subscriptions
- Notifications with Apollo Subscriptions
- Summary
- Writing Tests
- Testing with Mocha
- Our first Mocha test
- Starting the back end with Mocha
- Verifying the correct routing
- Testing GraphQL with Mocha
- Testing the authentication
- Testing authenticated requests
- Testing React with Enzyme
- Summary
- Optimizing GraphQL with Apollo Engine
- Setting up Apollo Engine
- Analyzing schemas with Apollo Engine
- Performance metrics with Apollo Engine
- Error tracking with Apollo Engine
- Caching with Apollo Server and the Client
- Summary
- Continuous Deployment with CircleCI and Heroku
- Preparing the final production build
- Code-splitting with React Loadable and webpack
- Code-splitting with SSR
- Setting up Docker
- What is Docker?
- Installing Docker
- Dockerizing your application
- Writing your first Dockerfile
- Building and running Docker containers
- Multi-stage Docker production builds
- Amazon Relational Database Service
- Configuring Continuous Integration
- Deploying applications to Heroku
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-07-02 13:21:17