Updated Jul 24, 2025

Step-by-Step Guide: Building a Snapchat Clone with Adalo

Table of Contents
Text Link

This comprehensive tutorial will walk you through building a Snapchat-style messaging app using Adalo's no-code platform. While some features like AR filters aren't possible, you'll create a functional app with disappearing messages, stories, and social features.

Prerequisites and Initial Setup

Step 1: Create Your Adalo Account

  1. Go to Adalo.com and sign up
  2. Click "Create New App"
  3. Choose "Mobile App" (essential for camera features)
  4. Name your app (e.g., "SnapClone")
  5. Select "Start from Scratch"

Step 2: Configure App Settings

  1. Choose a primary color (yellow for Snapchat-style)
  2. Select dark theme for authentic feel
  3. Pick a modern, clean font
  4. Click "Continue" to enter editor

Setting Up the Database

Step 3: Enhance the Users Collection

  1. Click Database icon in left sidebar
  2. Select the default "Users" collection
  3. Add these properties (click "+ Add Property"):
    • Profile Picture (Image)
    • Display Name (Text)
    • Bio (Text - check "Multiline")
    • Phone Number (Text)
    • Snap Score (Number - default: 0)
    • Last Active (Date & Time)
    • Ghost Mode (True/False - default: false)
    • Location (Location property)
    • Notification Settings (Text - for JSON)

Learn more about the Users collection

Step 4: Create Messages Collection

  1. Click "+ Add Collection"
  2. Name it "Messages"
  3. Add properties:
    • Content Type (Text) - Values: "photo", "video", "text"
    • Media File (Image)
    • Text Content (Text)
    • Created At (Date & Time - Automatic)
    • Expires At (Date & Time)
    • Is Read (True/False - default: false)
    • Read At (Date & Time)
    • Timer Duration (Number - default: 10)

Step 5: Create Friendships Collection

  1. Click "+ Add Collection"
  2. Name it "Friendships"
  3. Add properties:
    • Status (Text) - Values: "pending", "accepted", "blocked"
    • Created At (Date & Time - Automatic)
    • Streak Count (Number - default: 0)
    • Last Snap Exchange (Date & Time)
    • Emoji Status (Text)

Step 6: Create Stories Collection

  1. Click "+ Add Collection"
  2. Name it "Stories"
  3. Add properties:
    • Media (Image)
    • Caption (Text)
    • Created At (Date & Time - Automatic)
    • Expires At (Date & Time)
    • Is Public (True/False)
    • Location Tag (Text)

Step 7: Create Story Views Collection

  1. Click "+ Add Collection"
  2. Name it "Story Views"
  3. Add properties:
    • Viewed At (Date & Time - Automatic)

Step 8: Set Up Relationships

  1. In Messages:


    • Add "Sender" → Users (Many to One)
    • Add "Recipient" → Users (Many to One)
    • Add "Reply To" → Messages (Many to One)
  2. In Friendships:


    • Add "User 1" → Users (Many to One)
    • Add "User 2" → Users (Many to One)
  3. In Stories:


    • Add "Creator" → Users (Many to One)
  4. In Story Views:


    • Add "Story" → Stories (Many to One)
    • Add "Viewer" → Users (Many to One)

Database documentation

Building the Camera Interface

Step 9: Create Camera Screen

  1. Add new screen "Camera"
  2. Make it the home screen
  3. Add Image Picker component:
    • Set to full screen
    • Connect to Messages → Media File
    • Style with transparent background

Component basics

Step 10: Add Camera Controls

  1. Add overlay buttons:
    • Circle Button at bottom center for capture
    • Icon Button (flip camera) top right
    • Icon Button (flash) top left
  2. Add navigation tabs at bottom:
    • "Chat" icon → Messages screen
    • "Stories" icon → Stories screen

Step 11: Configure Media Upload

  1. On Image Picker, add action:
    • Create Message record
    • Set Content Type to "photo"
    • Set Created At to current time
    • Navigate to "Send To" screen

Creating the Messaging System

Step 12: Build Friends List Screen

  1. Add new screen "Friends"
  2. Add Custom List:
    • Data: Friendships
    • Filter: (User 1 = Logged In User OR User 2 = Logged In User) AND Status = "accepted"
  3. For each list item show:
    • Friend's profile picture
    • Display name
    • Streak count (if > 0)

Step 13: Create Send To Screen

  1. Add new screen "Send To"
  2. Add Custom List of friends
  3. Add Toggle component in each list item
  4. Add timer selector:
    • Dropdown: 1-10 seconds
    • Updates Message → Timer Duration
  5. Add "Send" button:
    • Creates Message for each selected friend
    • Sets Expires At = Current Time + Timer Duration

Step 14: Build Chat List Screen

  1. Add new screen "Chats"
  2. Add Custom List:
    • Group messages by sender/recipient pairs
    • Show last message preview
    • Add unread indicator (red square)
  3. Click action → Navigate to "Chat Detail"

How to add chat to your app

Step 15: Create Chat Detail Screen

  1. Add new screen "Chat Detail"
  2. Add Custom List for messages:
    • Filter by conversation participants
    • Conditional visibility for sent/received
    • Different styling for each message type
  3. Add input bar at bottom:
    • Text Input
    • Camera button
    • Send button

Step 16: Implement Snap Viewing

  1. Add new screen "View Snap"
  2. Add Image component (full screen)
  3. Add countdown timer overlay
  4. On screen load:
    • Check if Current Time < Expires At
    • If expired, show "Snap no longer available"
    • If valid, start countdown
  5. After timer ends:
    • Update Message → Is Read = true
    • Navigate back

Building Stories Feature

Step 17: Create Story Camera

  1. Duplicate Camera screen
  2. Modify upload action:
    • Create Story record instead
    • Set Expires At = Current Time + 24 hours
    • Navigate to "Story Preview"

Step 18: Build Stories Feed

  1. Add new screen "Stories"
  2. Add horizontal Custom List:
    • Filter: Created At > Current Time - 24 hours
    • Group by Creator
    • Show profile picture circles
  3. Add "Your Story" as first item
  4. Click action → "View Story" screen

Step 19: Create Story Viewer

  1. Add new screen "View Story"
  2. Add Image component (full screen)
  3. Add progress bar at top
  4. Add viewer info overlay:
    • Creator name and time
    • Close button
  5. On view:
    • Create Story View record
    • Auto-advance after 5 seconds

Implementing Social Features

Step 20: Build Add Friends Screen

  1. Add new screen "Add Friends"
  2. Add search bar (Text Input)
  3. Add Custom List of Users:
    • Filter: Username contains search term
    • Exclude existing friends
  4. Add "Add" button:
    • Creates Friendship record
    • Status = "pending"

Step 21: Create Friend Requests

  1. Add new screen "Friend Requests"
  2. Add Custom List:
    • Filter: User 2 = Logged In User AND Status = "pending"
  3. Add Accept/Decline buttons:
    • Accept: Update Status to "accepted"
    • Decline: Delete Friendship record

Step 22: Implement Snap Streaks

  1. On message send action:
    • Find Friendship record
    • Check Last Snap Exchange date
    • If within 24 hours, increment Streak Count
    • If > 24 hours, reset to 1
    • Update Last Snap Exchange

Step 23: Create User Profile

  1. Add new screen "Profile"
  2. Display:
    • Profile picture (editable)
    • Display name and username
    • Snap Score
    • Added Me section
    • My Friends count
  3. Add settings button → "Settings" screen

Adding Notifications

Step 24: Configure Push Notifications

  1. Go to Settings → Push Notifications
  2. Upload certificates for iOS/Android
  3. Add notification triggers:
    • New snap received
    • Friend request
    • Someone viewed your story
    • Streak about to end

Push notifications setup

Step 25: Create Notification Actions

  1. On message send:
    • Trigger notification to recipient
    • Title: "[Sender Name] sent you a Snap!"
    • Body: "đź‘» Open now"
  2. On friend request:
    • Title: "New friend request"
    • Body: "[User] wants to be friends"

Advanced Features

Step 26: Add Location Features

  1. Install Maps component from Marketplace
  2. Create "Snap Map" screen
  3. Display friends' locations:
    • Filter by Ghost Mode = false
    • Show profile pictures as markers
  4. Add location sharing toggle in settings

Step 27: Implement Discover Section

  1. Add new screen "Discover"
  2. Create Custom List of public stories
  3. Filter: Is Public = true
  4. Group by categories or publishers
  5. Add view tracking

Step 28: Create Memories/Gallery

  1. Add new screen "Memories"
  2. Show saved snaps (add "Is Saved" property)
  3. Organize by date
  4. Add export/share functionality

Working with Platform Limitations

Step 29: Handle Missing Features

Cannot Implement:

  • Automatic deletion (use expiry checks)
  • Real AR filters (basic overlays only)
  • Screenshot detection
  • Video calls
  • Voice/video messages (limited)

Workarounds:

  • Manual refresh for real-time updates
  • Third-party components for timers
  • External image editing before upload

Step 30: Optimize Performance

  1. Limit list items to 20-30
  2. Use pagination for long lists
  3. Compress images before upload
  4. Clear old messages periodically
  5. Use conditional visibility wisely

Testing and Launch

Step 31: Test Core Features

  1. Create test accounts
  2. Test friend system
  3. Send various snap types
  4. Verify expiration logic
  5. Check streak calculations
  6. Test on multiple devices

Step 32: Prepare for Publishing

  1. Upgrade to paid plan ($45+/month)
  2. Configure app store settings
  3. Create privacy policy
  4. Add terms of service
  5. Set up user support flow

Additional Resources

Important Considerations

Cost Breakdown:

  • Starter Plan ($45/month): Basic features
  • Professional ($65/month): Custom actions needed
  • Team ($200/month): For multiple developers
  • Additional marketplace components: $10-50 each

Third-Party Components:

  • PragmaFlow Timer: For countdown features
  • CL Stories: Instagram-style stories UI
  • Advanced Chat Template: Enhanced messaging

This Snapchat clone will provide core messaging and stories functionality within Adalo's constraints. While it won't match Snapchat's advanced features, it serves as a solid foundation for a social messaging app.

Start Building With An App Template
Build your app fast with one of our pre-made app templates
Try it now
Read This Next

Looking For More?

Ready to Get Started on Adalo?