Throughout this course, we'll be building a live chat app for developers called DevChat, where users will be able to create channels, to send messages to other users on those channels, send media files, see when other users are typing, add emojis to their messages, favorite and unfavorite channels they like or dislike, and get notifications about new messages on other channels.
Build a Slack Chat App with React, Redux, and Firebase
Build a Slack Chat App with React, Redux, and Firebase is a 67-lesson 5 hours 55 minutes self-paced course by Udemy. Throughout this course, we'll be building a live chat app for developers called DevChat, where users will be able to create channels , to send messages to other users on those channels, send media files, see when other users are typing…
Course facts
- Lessons
- 67
- Duration
- 5 hours 55 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Udemy
- Price
- Premium
Interested in building impressive full-stack apps with React, Redux and Firebase? This is the course for you!
Here's what we will cover:
Creating a complete Slack chat application with React, Redux, and Firebase 5 from scratch
Sending and receiving messages instantly with the real-time Firebase Database
Uploading and displaying image messages using Firebase Storage
Notifications to display new messages in other channels
Sending Direct Messages to other users in our chat
Tracking / showing when users are online / offline
Searching messages within created channels
Custom animations to see when other users are typing in the same channel
Creating, cropping and uploading user avatars
The ability to favorite / unfavorite public channels
Add emojis to our messages with an Emoji Picker component
User authentication with Firebase
Form validation for our Login and Register forms
State management with Redux, with simple, straightforward patterns
Creating stunning user interfaces with Semantic UI React
Essential features of React Router 4 (Switch component, withRouter HOC, history object)
Tons of work with ES6 / 7
Helpful browser tools such as React / Redux Dev Tools
Securing our application with Firebase Rules
Deploying our chat app to the web using Firebase Tools
Keyboard shortcuts to rapidly send messages
And more!
Requirements:
Some experience with React (i.e. having built a couple of projects with React Create App)
Prior knowledge of ES6 features will help (spread operators, destructuring, object shorthand syntax)
- Anyone who has at least two months of experience with the JavaScript library React
- React developers interested in making functional, real-world apps
- Developers looking for more experience with the JavaScript language in a practical setting
What you'll learn:
- Create full-stack apps with React, Redux and Firebase, among other tools in the React ecosystem
- Make complete React apps from scratch, from setting up their dev environment to deployment on the web
- Integrate Redux and Firebase with React apps using straightforward, practical patterns
- Learn every major part of Firebase 5--the real-time database, storage, rules, listeners and deployment with Firebase tools
Who teaches Build a Slack Chat App with React, Redux, and Firebase? Udemy
Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.
Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.
What lessons are included in Build a Slack Chat App with React, Redux, and Firebase?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Required Tools for the Project Demo | 01:00 | |
| 2 | Install React / Redux Dev Tools for Google Chrome | 02:28 | |
| 3 | Git Clone and Install Dependencies | 01:45 | |
| 4 | Organize Project, Create Routes | 04:20 | |
| 5 | Setup Firebase | 03:40 | |
| 6 | Create Register Form | 05:37 | |
| 7 | Register User with Email and Password | 06:08 | |
| 8 | Form Validation for Register Form | 07:09 | |
| 9 | Clear Errors upon Registration, Show Loading State | 05:33 | |
| 10 | Add Name and Avatar to Users, Add New Users to Database | 07:20 | |
| 11 | Create Login Form and Functionality | 04:11 | |
| 12 | onAuthStateChanged to Listen for Login/Register | 02:59 | |
| 13 | Set up Redux to Make User Data Available on Global State | 08:50 | |
| 14 | Add Spinner Component for Loading State | 03:29 | |
| 15 | Scaffold App Components | 04:20 | |
| 16 | App Header / UserPanel Dropdown | 06:06 | |
| 17 | Add Signout Functionality, Clear User Action | 04:05 | |
| 18 | Passing Redux State via Props | 07:05 | |
| 19 | Add Avatar to User Dropdown | 01:20 | |
| 20 | Add Channels Component | 03:00 | |
| 21 | Create Modal for Adding Channels | 05:34 | |
| 22 | Create Channels Collection, Add First Channel to Database | 06:46 | |
| 23 | Display Channels with child_added Listener | 03:23 | |
| 24 | Put Channel on Global State, Add channel_reducer | 05:22 | |
| 25 | Set First Channel on Page Load, Show Active Channel | 04:20 | |
| 26 | Remove Listeners with componentWillUnmount | 00:52 | |
| 27 | Scaffold ColorPanel / Message Components | 08:13 | |
| 28 | Create Messages Collection, Add First Message to Database | 11:21 | |
| 29 | Controlled Input to Clear Message, Disable Button on Loading State | 01:12 | |
| 30 | Display Messages, Create Message Component | 07:24 | |
| 31 | Create File Modal to Upload File | 05:20 | |
| 32 | Put Media File in State, Add Mimetype Validation | 05:51 | |
| 33 | Upload Image File, Post Image Message | 09:16 | |
| 34 | ProgressBar Component to Represent Image Upload | 03:47 | |
| 35 | Options for Displaying ProgressBar | 03:51 | |
| 36 | Add Channel Title / Users Count to Messages Header | 05:12 | |
| 37 | Add Ability to Search Messages | 07:20 | |
| 38 | Create DirectMessages Component | 03:02 | |
| 39 | Add Users to DirectMessages Component, Show If Online/Offline | 08:35 | |
| 40 | Put DirectMessage Channel Data in Global State, Set as Private Channels | 05:35 | |
| 41 | Functionality to Add Messages / Images to Private Channels | 07:09 | |
| 42 | Display Active DirectMessage Channel | 01:34 | |
| 43 | Add Notifications to Public Channel | 09:36 | |
| 44 | Add Starred Component to Hold Starred (Favorited) Channels | 03:46 | |
| 45 | Update 'Starred' Property for User Data Upon Starring Channel | 09:12 | |
| 46 | Display Starred Channels in Starred Component | 04:09 | |
| 47 | Scaffold MetaPanel Component | 05:41 | |
| 48 | Display Channel Info in MetaPanel | 03:31 | |
| 49 | Display Top Posters for each Channel in MetaPanel | 10:37 | |
| 50 | Add Color Picker Modal to ColorPanel | 04:30 | |
| 51 | Attach Chosen Colors to User Data | 07:58 | |
| 52 | Display Saved User Colors as Icons, Change App Colors on Click | 11:25 | |
| 53 | Create Change Avatar Modal | 04:12 | |
| 54 | Crop Uploaded Image with AvatarEditor | 06:22 | |
| 55 | Upload Cropped Image to Firebase, Put on User Profile | 06:50 | |
| 56 | Add Typing Collection to Track When Other Users Typing | 03:57 | |
| 57 | Add Typing Component / Animation, Display in Messages | 04:01 | |
| 58 | Add Typing Listeners to See When Other Users Typing | 07:07 | |
| 59 | Emoji Picker to Add Emojis to Messages | 06:52 | |
| 60 | Automatic Scroll to Bottom upon New Message | 03:00 | |
| 61 | Show Message Skeleton when Messages Loading | 06:34 | |
| 62 | Create Key Combo Shortcuts to Send Messages | 01:27 | |
| 63 | Remove Listeners upon Component Unmount | 06:40 | |
| 64 | Write Firebase Storage Rules for Media Files | 06:01 | |
| 65 | Write Database Rules for App Data | 06:51 | |
| 66 | Deploy our App with Firebase Tools | 03:05 | |
| 67 | Bonus Lecture | 00:30 |
Get instant access to all 66 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Build a Slack Chat App with React, Redux, and Firebase?
-
Updated 1y agoReact Simplified - Advanced
By: Web Dev Simplified (Kyle Cook)Once you become a good React developer, it is time to start diving into advanced React concepts. This course will take you from a junior to a mid-level React d11h 34m5/5 -
Updated 2y agoReact and NestJS: A Practical Guide with Docker
By: UdemyReact and NestJS: A Practical Guide with Docker — build a fullstack TypeScript app with React, NestJS, TypeORM, and containerized deploy.6h 54m -
Updated 3mo agoReactJS Ultra for Beginners
By: Pedro Henrique MachadoMaster ReactJS from scratch by learning components, states, routing, and forms through practical projects. This course will help you confidently apply React...14h 58m -
Updated 2y agoBuilding a Component Library with Storybook
By: Handlebar Labs (Spencer Carli)Learn to create a library of components that are easy to use, self documenting, and easily tested. I've found that using Storybook to define my component's API1h 10m -
Updated 2y agoCrack the Frontend Interview with React
By: Zero To MasteryEnhance your React skills with a project-based course that prepares you for frontend engineering interviews. Build a star rating component while mastering1h 6m5/5 -
Updated 2y agoServer Side Rendering with React and Redux
By: Udemy, Stephen GriderGo beyond the basics of React and Redux! This course will teach you to combine the ultra-popular React v16, Redux, React Router, and Express technologies to bu8h 14m -
Updated 3y agoReact: Flux Architecture (ES6)
By: egghead.ioAs a React application grows, so does the needs for organization and patterns. How do components communicate? How do we manage state across the application? How49m
More courses by Udemy
-
Updated 1mo agoReact - The Complete Guide
React: The Complete Guide by Maximilian Schwarzmüller — original 2022 edition covering React hooks, Redux, Context API, Next.js basics.47h 42m5/5 -
Updated 3y agoComplete C# Unity Game Developer 3D
This is the long-awaited sequel to the Complete Unity Developer - one of the most popular e-learning courses on the internet!30h 34m -
Updated 3y agoNest.js Microservices: Build & Deploy a Scaleable Backend
Nest.js is an incredible backend framework that allows us to build scaleable Nodejs backends with very little complexity. A Microservice architecture is a popul5h 39m5/5 -
Updated 3y agoThe HTML & CSS Bootcamp 2023 Edition
Brand new HTML & CSS course, just released in February 2023 Check out the promo video to see the beautiful, responsive projects we build in this course!37h 18m5/5 -
Updated 3y agoMicroservices with Node JS and React
Event-Based Architecture? Covered! Server side rendering with React? Yep. Scalable, production-ready code? Its here!54h 13m5/5 -
FreeClassic100 Days of Code - The Complete Python Pro Bootcamp for 2023
Watch the 100 Days of Code Python Pro Bootcamp free: 100 daily projects covering Python basics, web scraping, data science, automation and GUI apps.58h 35m5/5