Mô tả

This is a Nodejs and Flutter complete app for beginners to advanced level. Here in tutorial we will use Mongodb for our database and JWT for authentication and socket for chatting.

  1. app preview

  2. onboarding screen

  3. login screen

  4. register screen

  5. resume page

  6. upload picture screen

  7. edit screen

  8. job home screen

  9. job search screen

  10. job view screen

  11. chatting screen

  12. chatting list screen


We have also build real time chatting with firebase, so that you learn how to do chatting with flutter, nodejs, mongodb.

Frontend Flutter we started from onboarding screen to login to chatting app. We have used Provider package for managing state.

Provider is one of the most popular package for managing states and easy to follow. As far as flutter framework goes, we have used the latest version to create this tutorial.

This tutorial covers more than 12 hours which is enough to finish all these. You will start with a starter file and finish with an excellent complete app.

1. Initializing the Express App

To kickstart our project, we begin by setting up a Node.js app with Express. By leveraging the simplicity and flexibility of Express, we can quickly establish a solid foundation for our backend architecture.

2. Parsing JSON Data

To handle JSON data, we incorporate the "express json" middleware. This enables us to effortlessly parse incoming JSON requests, simplifying the handling and manipulation of data within our application.

3. Integrating dotenv for Environment Variables

Securing sensitive information is paramount, especially when dealing with credentials or API keys. By integrating the dotenv package, we can load environment variables from a .env file, ensuring that sensitive data remains confidential.

4. Authentication with Encrypted Passwords

To enhance security, we employ the crypto-js library to encrypt passwords securely. Additionally, we utilize the jsonwebtoken library to sign tokens for authentication purposes. These measures help safeguard user data and prevent unauthorized access.

5. Separating Logic into Controllers

To maintain clean and organized code, we extract the logic from our routes and encapsulate them within separate controllers. By doing so, we ensure a clear separation of concerns and promote code reusability.

6. Utilizing Middleware for Route Protection

To add an extra layer of security, we implement middleware functions that protect specific routes from unauthorized access. This ensures that only authenticated users can access protected endpoints.

7. Creating Specialized Controllers and Routes

To handle different functionalities efficiently, we create distinct controllers for various features within our REST API. These include controllers for messaging, bookmarking, job management, user operations, and authentication. Each controller is accompanied by dedicated routes to handle specific API endpoints.

8. Connecting MongoDB to the Application

To store and retrieve data, we integrate MongoDB into our application. This NoSQL database provides a flexible and scalable solution. We also explore the basics of MongoDB, such as creating search indices to optimize query performance.

9. Testing Endpoints and API Documentation

To ensure the correctness and reliability of our endpoints, we run tests using tools like Postman. Additionally, we cover the creation of collections and the utilization of environments within Postman, facilitating efficient API testing and documentation.

10. Preparing for Deployment

To prepare our application for deployment, we discuss the necessary steps to take. This includes creating a repository on a platform like GitHub, adding files to the repository, and excluding unwanted files from commits. These practices contribute to maintaining a clean and well-structured codebase.

11. Deployment with Railway

Finally, we explore the process of deploying our server using Railway, a platform that simplifies the deployment of Node.js applications. By following the outlined steps, we ensure that our application is accessible to users and operates reliably in a production environment.

Bạn sẽ học được gì

Flutter NodeJS course

Flutter NodeJS restful api

Flutter Firebase chat

Flutter Provider app

Yêu cầu

  • Flutter SDK installed and knows how to run a basic Flutter app

Nội dung khoá học

13 sections

Introduction

3 lectures
Introduction
11:50
Introducing the starter code
10:07
Running the app first time
11:23

Onboarding screen, Provider and Slides

5 lectures
PageView and scroll physics
09:13
Onboarding Screen slide one
08:06
Onboarding Screen slide two and three
15:16
Onboarding Provider
07:23
0007. Positioned Widget and manipulating scroll
11:09

Main screen & Zoom drawer

8 lectures
0008. MainScreen with a ZoomDrawer.mp4
06:22
0009. ZoomDrawer Screens
07:58
0010. Custom appBar with profile leading
04:28
0011. Manipulating ZoomDrawer properties
01:58
CustomAppBar on all Mainscreen pages
02:38
Setup conditions for profile page
01:57
Home Page Introductory Text
08:49
Search Widget and Home Page Widgets
07:34

Nodejs server and database installing

3 lectures
Creating Node Server and installing dependencies_1
08:47
Creating the database
04:16
Connecting the server to the database
01:52

Job section and CRUD

10 lectures
Create Job Schema
04:58
Job Controller - CreateJob Func - UpdateJob Func
07:35
DeleteJob Func - GetJob Func
03:37
Initializing git repos
02:28
GetAllJobs Func
06:16
Jobs Router and Hooking them to the index
07:27
Import postman Collection and creating search index
09:22
Testing Job Endpoints in postman
02:54
How to create models using quicktype
02:32
Hosting the server on railway
04:03

Job section, Job list

23 lectures
Get job function
07:14
GetJobs Function
02:29
Popular Jobs FutureBuilder and ListViewBuilder
13:01
JobsHorizontalTile
07:03
JobsHorizontalTile 2
05:43
JobsHorizontalTile 3
05:04
Placing widgets in a row
00:49
Navigation with get route to JobDetailsPage
02:47
Passing Data from a widget to a page
02:01
Jobdetail FutureBuilder Consumer Widget CustomAppBar
08:00
Aligned widget with CustomOutlinedButton
03:19
JobDetails ListView
14:01
Adding bullets to text in flutter
02:27
Stylng requirements text
02:05
Get recent Jobs
04:50
Job Vertical Tile
05:42
Job Vertical Tile
03:24
Job Vertical Tile
05:43
Popular jobs list
10:09
UploadedTile and Search Page
09:18
Custom TextField
13:04
Search Page
03:25
Search Function
02:38

Login section with Provider

18 lectures
Login Form and Custom Text Field
08:32
Login Provider obsecure text
05:28
Form Validation and submit button
06:23
Sign up
06:40
UserSchema
05:44
Connect backend to firebase
05:34
Creating user func
09:45
Login Func
12:09
Testing Endpoints in Postman
03:42
Login and Sign up Function
13:32
App entrypoint
04:42
Signup Controllers
05:50
Successfull signup
04:22
Login function in Login Controller
01:40
LoginNotifier provides
08:42
Rectifying uid error and successfull login
05:18
Page protection
07:02
Logout Func_1
03:14

Bookmark section

23 lectures
Protection Logic
04:21
Protecting bookmarks to non logged in users
03:08
Backend Middleware fro route protection
06:53
Create BookMarks func and bookmaark Schema
08:33
Delete Bookmarks Func
02:05
GetAllBookmarks Func
03:53
Get Single Bookmark Func
03:52
Bookmark Router
05:49
Testing Borkmark endpoints in postman
02:02
Rectifying middleware errors
01:36
Testing Borkmark endpoints after changes
04:01
AddBookmark Func -Frontend
05:54
GetAll BookMarks Func
01:31
GetAll BookMarks Func
06:34
BookMarks Provider
02:29
BookMarks Provider
05:01
BookMarks Provider
04:10
Changes to bookmarks
04:54
BookMarks Provider
05:04
Frontend and backend boomark changes
06:00
Adding and deleting bookmarks
02:29
Bookmarks page
07:57
Bookmark page
10:44

Backend and UserController

16 lectures
UserController Backend
01:30
UserController Backend
07:25
Skills funcs
09:39
Skills routes and postman test
04:10
AgentSchema and AddAgent Func
04:14
AddAgent Func
01:01
Update Agent and GetAgent func
05:06
GetAgents Func
02:20
Agent routes and postman test
04:46
Get Agent Jobs Backend
06:26
GetProfile int the initState
09:38
Profile FutureBuilder
14:52
Displaying Profile info in the profile page
01:27
GetSkills Function and Skills Notifier
08:53
SkillsWidget
01:32
SkillsWidget Logic
09:20

Skill set

5 lectures
AddSkillsWidget
02:32
AddSkills Logic
09:20
Display userSkills
07:19
AddSkills
06:00
AddSkills logic and getting data
11:39

Profile section

2 lectures
Profile redesign
07:47
Profile redesign
07:30

Add job section

21 lectures
AddJobs page
04:39
Add Job Ui
09:28
Add Job Submit Button
00:53
Add Company Image Url
07:29
Set String in providers
03:54
Display image Logic
02:29
Add Jobs via the app
08:45
Correct errors
08:09
Correct errors_Sub_01
12:47
Correct errors_Sub_02
10:59
Update Jobs
05:48
Update Jobs
02:25
TabBar
13:20
TabBarView
08:38
GetAgent Function
10:16
Randomized Agents List with future builder and Listview bilder
12:42
Agent Details Page
12:30
Agent Details
10:52
Display agent information
06:00
Get AgentJobs
05:24
Get Agent Job List and styling the related widgets
08:11

Chat section

16 lectures
BuildChatRow
12:31
Integrating firebase to flutter app using firebase cli
06:09
Firebase Services
10:43
CreateChat function inside the job details page
13:38
Applied Job
10:26
Test new endpoints in postman testing
03:09
Applied Jobs Functions
06:01
AppliedJobs
05:16
Applied Jobs
04:18
ChatList Streams
14:51
ChatPage
13:08
ChatPage appBar
14:14
Displaying job details inside the chat page
10:53
MesagingFiled
19:03
Left and right chat bubbles
17:52
Displaying Chats
12:26

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.