
Explore flutter flow, a low-code tool for rapid mobile app development, and create your first blank Tinder clone project with a login UI built by dragging widgets.
Create and configure a Firebase project for your Flutter Flow Tinder clone, enabling authentication (email/password and Google sign-in), Firestore database, and storage, then establish a one-to-one Flutter Flow Firebase setup.
Learn how to connect a FlutterFlow project to a Firebase project, configure authentication, set up Firestore collections for users, and generate config files, with two workflow options.
Learn how to navigate apps using actions in Flutterflow, including creating a custom app bar, wiring buttons to navigate to pages, and setting up conditional navigation such as admin checks.
Learn to build a lateral navigation drawer in Flutterflow, add a leading menu icon, and configure drawer items to navigate between home and pages with proper open and close actions.
Navigate from the home page to a child page and back, enforcing a single back path. Configure the back button and app bar to restrict navigation.
Learn to read data from Firestore in a FlutterFlow Tinder clone by querying the users collection, displaying each user's email, and using real-time updates with security rules for development.
Create a Firestore document from a flutterflow app by wiring a text field to widget state, saving to the users collection, and showing a snack bar.
Delete a Firestore document by tapping a red trash icon in a row, selecting delete document in flutter flow, and using the document reference from the users collection.
Learn to update Firestore documents in a Flutterflow Firebase Tinder clone by passing user data between pages, preloading fields, and chaining CRUD actions with navigation.
Convert a widget into a reusable FlutterFlow component and pass a user object through component parameters to keep data and actions consistent across pages.
Explore version control by saving software states with a git-like tool, using diary-style snapshots to restore earlier versions of login UI and pages.
Design a login interface and implement Firebase authentication with email and password, including sign up, home, and logout flows, and handle common errors in FlutterFlow.
Upload and save profile images to Firebase, then update the authenticated user’s document with the photo URL to ensure the image loads on future visits.
Add a video element and upload workflow in Firebase, updating the authenticated user's Firestore document with the video presentation URL, and test the upload end-to-end for production readiness.
Explore conditionals and conditional visibility to show or hide the user's photo and video presentation based on the existence of the photo URL and video presentation, with Firebase updates.
Explore arranging elements with columns and rows in the Tinder app. Use containers, list view, and grid views, with padding, alignment, and expand or scrollable options.
Convert a user card into a component and pass data via parameters (email and photo path), then compare flexibility versus performance when choosing whole object versus individual props.
Build a simplified tinder clone with flutterflow and firebase, focusing on authentication, my profile with image and video, and a swipeable stack for matches and chat.
Add a description field to the user schema, update name and description on save, and preload initial values for authenticated users in the Tinder clone.
Create a tinder-style swipeable stack on people page using a card in the swipeable stack, with a single time query excluding current user and exposing photo URL and display name.
Connect left and right swipe actions in a flutterflow Tinder clone by linking heart and bin icons to the swipeable stack events, via on tap or card gesture.
Upgrade your Firebase project in the console and deploy the backend with Cloud Functions. Explore the Blaze pay-as-you-go plan, 2 million free invocations per month, and per-usage pricing.
Please, if you want to know a bit more of Javascript (the language that we will use for the backend) go to the "Annex of Javascript Basics" at the end of the course before continuing.
Please, if you want to know a bit more of Javascript (the language that we will use for the backend) go to the "Annex of Javascript Basics" at the end of the course before continuing.
Please, if you want to know a bit more of Javascript (the language that we will use for the backend) go to the "Annex of Javascript Basics" at the end of the course before continuing.
https://github.com/pedronieto84/tinder-udemy-english
Please, if you want to know a bit more of Javascript (the language that we will use for the backend) go to the "Annex of Javascript Basics" at the end of the course before continuing.
Test a post api in FlutterFlow by creating and testing an api call, passing a json body with string ids, and verifying the backend Firestore update.
Learn to integrate an API call in flutter flow on a right swipe, passing the authenticated user id and the liked user id, and handle basic success and error.
Learn to query the theyLikeMe subcollection using a document reference from users, retrieve the display name, and render it via a reusable single-time query component.
Improve the tinder-like interface by adding padding and icons for like, dislike, and view profile, and build a simplified profile page with parameterized user data and navigation.
Implement a backend Firestore delete to remove a 'I don't like you' record from the current user's 'they like me' subcollection, with validation, API calls, and snack-bar feedback.
Create a chat user item component fed by a user document reference, query the users collection, and display the loaded name with icons in the chat room.
Build a chat conversation page with a back button and the other user's name. Include a heartbroken icon to end the match, and pass the name as a string parameter.
Build a 1-to-1 chat with a chats collection and a messages subcollection. Use deterministic sort of two user IDs to form chat id and store last message, time, and sender.
Develop a javascript function to generate a chat id from two user ids and create a chat document in the chats collection. Deploy and test messaging in tinder clone app.
Use FlutterFlow custom functions to generate chat IDs and insert messages into a Firestore subcollection, while handling document references and parameter passing.
Implement break match logic by deleting all chats, removing both users from the 'we like each other' subcollections, and triggering a post API call to complete the deletion.
Demonstrates end-to-end Tinder-like interactions in a FlutterFlow Firebase app: multi-user login, profile browsing, right-swipe likes, real-time chats, delete actions, and final navigation polish to complete the clone.
Configure firebase functions permissions for stripe operations in flutter flow via Google Cloud IAM to enable firestore and billing.
Learn how to create a Stripe customer via a direct API call using HTTP post, secret key, and form URL encoded body, integrated with FlutterFlow.
Demonstrate integrating Stripe by creating a Stripe customer after signup, using the authenticated user's email and name, updating a paid flag, and gating chat and profile actions with conditional visibility.
Explore JavaScript variables, focusing on const and let, with a brief note on var. Learn when to reassign, why const is fixed, and how to choose between let and const.
Explore JavaScript functions by defining and calling traditional functions, arrow functions, and anonymous callbacks; learn how statements and semicolons affect execution order and invocation.
Explore the basic JavaScript data types: strings, numbers, booleans, null, and objects with properties, with quotes for strings and the difference between numbers and numeric strings.
Learn JavaScript data types, including primitive types (string, number, boolean, null, undefined, symbol) and non-primitive types (objects such as arrays, sets, dates, and functions), and clarify undefined versus null.
We will see the basic concepts of flutterflow and firebase. In the first block of the course. Then we will prepare some small backend with Firebase Functions, and with all the firebase libraries, using the programming language of Javascript. And then we will develop a full Tinder Clone with chat, swipes, matches, breaking matches functionality and even payments (using Stripe). Also along the course Chatgpt will be introduced and used as an assistant while we work. Here I Present you all the lectures that are included in this course:
Presentation and creation of first project
Create a firebase project and enable services
Explore firebase services
Connect firebase and flutterflow
Pages and navigation
Navigation by actions
Navigation with lateral menu
Navigate to child page
Read data from firestore
Create object in firestore
Delete an object from firestore
Update a firestore document
Create a component
Version control
Login
Sign Up
Google Auth
Reset Password
Upload images
Update image url
Upload video
Conditionals
API Calls
Layout columns rows
Layout with containers
Layout with listview
Layout with gridview
Pass data to component by parameters
Tinder: authentication and my profile
Tinder: add description
Tinder: swipeable stack
Tinder: icons in swipeable
Tinder: firebase change plan
Tinder: needed tools
Tinder: Firebase functions setup
Tinder: Firestore functions conection
Tinder: Version control and clone of a project
Tinder: function of I like a person
Tinder: Test API Call Post
Tinder: API Call integration in an action
Tinder: Query people that likes me
Tinder: Query subcollection they like me
Tinder: Detail of person who likes me
Tinder: I don't like a person
Tinder: backend logic for a match
Tinder: integration API Call of create match
Tinder: create component for user item chat
Tinder: chat conversation page
TInder: chat page layout
TInder: chat BBDD design
TInder: backend generate chat doc
Tinder: custom functions generate chat Id
TInder: how to debug errors
TInder chat behaviour implementation
TInder: chat item improvement
TInder: adding circle image
Tinder: break match logic
Tinder: final test
Stripe
Stripe: firebase permissions
Stripe: deploy functions and put credentials
Stripe: create api call to create customers
Stripe: integrate payment flow in app