Chatter

The Ultimate Flutter Social Media

Chatter

The Ultimate Flutter Social Media

Chatter app is an ultimate social media script built with flutter and Laravel as backend. It offers many advanced features and functions like Feed (Images, Videos, Text), Stories, Chat, Chat Rooms, Manage Chat Rooms & Members, Random Profiles, Interests, Push Notifications And Lot more... This package contains fully functional Chatter flutter app, Backend, Database file & documentation. Using this script, any individual or company can save 100s of hours and publish twitter like social media app within couple of hours.

Version Details

dart: ">=3.3.0 < 4.0.0"
flutter: ">=3.19.1"
laravel/framework: "^9.0"

Developer Friendly

Specially built for developers to give them freedom while coding.

Clean Code

Less bulky and clean code with Getx flutter state management.

Laravel/Flutter

A great combination of techstacks, trending now in market.

Well Documented

Comes with nice documentation to help you get started fast and ASAP.

Continuous Updates

Comes with continuous updates to keep you safe from exploitable holes

Realtime Chat

Realtime chats between users regarding properties powered by Firestore.

Multiple Languages

The App Comes with multiple languages (More than 20). RTL supported.

Powerful Admin Panel

Admin dashboard to manage the data of the app and control them.

Attractive UI/UX

Amazing UI/UX designed and developed by world class designers.

Latest SDKs Ready

Android 13 : iOS 17 Ready

Active Support

Our support and developer team helps you solve any issues during installation.

Prerequisites

    • VPS with cPanel is recommended

    • PHP 8.0

    • Hosting with cPanel (Strictly Recommended)

    • memory_limit should be 500M

    • upload_max_filesize : 500M

    • post_max_size : 500M

    • max_input_time : 60

    • Firebase Blaze Plan

    • sightengine Account credential for Content Moderation : https://sightengine.com/

Extracting the project and settings up database

    • Extract the folder you have downloaded from codecanyon and open the folder

    • Open it and find the database.sql file

    • Then open your cPanel provided by your web hosting provider.

    • Click the MySQLDatabase option under DATABASES section and create database for your app as shown in the images below.

    db_1
    • Add database name and click on create database.

    db_1
    • Now we will create a user to access the database

    • Like as shown in the image, enter username and password (save it to use later)

    • Click on create user and user will be created

    db_1
    • Now we have to add that created user to database. so scroll down and you can see like image below

    • Select the user from the list and select the database, and click on add button below

    db_1
    • After clicking on add button you will see like below.

    • There you can see ALL PRIVILEGES option, check the box before that

    • This will tick all the boxes shown below (Check the image below). Click on make changes and you are done.

    db_1
    • Now we have to import the database file. Search for phpMyAdmin and click on it.

    db_1
    • Then system will redirect you to the phpMyAdmin where you will be able to find the database we just created

    • Click on that database

    • Then find the import button on the Top bar and click on it

    db_1
    • It will open the page like below

    • Click on Choose File button and load the database.sql file which will be there in the folder you have extracted.

    db_1
    • Click on go button at the bottom of the page.

    • Now database is ready to use.

Setting Up Database credentials to the project

    • Now come back to the project folder and then extract chatter_backend.zip file

    • In that folder, find the .env file, open it with any text editor and make the changes as below

    • There in the APP_URL Replace the https://yourdomain.com/ to Your Domain

    • Change Database Configuration, as shown in the example below

    db_1

    DB_DATABASE = database_name

    DB_USERNAME = database_username

    DB_PASSWORD = database_password

    • And save the file by pressing Ctrl + s

Cron Jobs

    • Search the Cron jobs in your cPanel Tools search.

    • cronjobs_1
      cronjobs_2
    • Now Add your curl --request GET 'https://yourdomain.com/deleteStoryFromWeb' in Command field like as above image.

    • And then Click on "Add New Cron Job" Button.

    • cronjobs_2
    • Your Cron Job is ready to work.

Setup Notification (FCM)

    • Follow This guide and setup project at firebase and collect private key .json

    • Open private key .json file in your text editor.

    • Copy content of private key .json file from your text editor.

    • Find the googleCredentials.json file in your backend folder and paste the content in that file.

sightengine (Optional)

    • Sign up at sightengine

    • See Below image for getting API Keys (API User & API secret)

    sightengine_1

  • Image
sightengine_2
sightengine_3
sightengine_4
  • You will be able to select the rules that should be applied, and what actions should be taken based on those rules: ACCEPT or REJECT.

sightengine_5
  • When you click on SAVE WORKFLOW , Then you will get your Workflow id for image

sightengine_6

  • Video
sightengine_2
sightengine_3
sightengine_9
  • You will be able to select the rules that should be applied, and what actions should be taken based on those rules: ACCEPT or REJECT.

  • When you click on SAVE WORKFLOW , Then you will get your Workflow id for video, Like below image

sightengine_10

  • Copy all 4 things, API Key, API Secret, Image Workflow id, Video Workflow id

  • Now Go to Admin panel and open setting page.

  • Now you will find sightengine section in setting page.

  • Keep switch on and paste them all like below image and save them

sightengine_11
  • Sightengine is now working in your app.

Storage setting (Optional)

  • AWS S3
    • Create an S3 Bucket:

    • Log in to your AWS Management Console.

    • Navigate to the S3 service.

    • Click on Create bucket.

    • Enter a unique bucket name.

    • Choose a region (e.g., ap-south-1).

    • Configure bucket settings as needed.

    • Click on Create bucket.

    • Create an IAM User with S3 Access:

    • Go to the IAM Console.

    • Click on Users and then Add user.

    • Enter a username.

    • Select Programmatic access for access type.

    • Click on Next: Permissions.

    • Choose Attach existing policies directly.

    • Search for and select AmazonS3FullAccess.

    • Click on Next: Tags , add tags if needed, then Next: Review.

    • Click on Create user.

    • Copy the Access Key ID and Secret Access Key.

    • And Make sure that your ITEM_BASE_URL is set correctly.

    • When you done all this things, After you can manage your storage from admin panel.


  • DigitalOcean
    • Create a DigitalOcean Space:

    • Log in to your DigitalOcean Control Panel.

    • Navigate to the Spaces section.

    • Click on Create a Space.

    • Choose a unique name for your Space.

    • Select a region (e.g., blr1).

    • Configure bucket settings as needed.

    • Click on Create a Space.

    • Create API Keys:

    • Go to the API section in your DigitalOcean account.

    • Click on Generate New Key.

    • Give your key a name and select the appropriate permissions.

    • Click on Generate Key.

    • Copy the Access Key and Secret Key.

    • When you done all this things, After you can manage your storage from admin panel.


storage_setting
  • Once you have set the credentials for required storage providers, You can set the required one here on the settings page. Only one at a time works. (So yes, You have to set the credentials only for that which you want to use.)

  • Local storage doesn't require any credentials.

  • Storage will work fine only if you have set the credentials correctly and made required configurations on their dashboards.

host your backend

    • Create a zip of the chatter_backend folder

    • Upload that folder to your domain-targeted directory on your cPanel provided by your hosting provider. and extract the zip file.

    • Make sure that your targeted directory has the project files directly, and not wrapped in a folder

    • Cheers! Now try accessing your domain, the admin panel should be live there on your domain

Getting the credential

Now web setup is completed and let's collect some credentials for the app setup

    • Admin Panel URL : http://yourdomain.com/

    • Admin Panel User Name : admin

    • Admin Panel Password : admin123

    • Baseurl : http://yourdomain.com/api/

    • apiKey : 123

Now save these credentials somewhere and start following the documentation to setup application.

Update info

    • To upgrade your project, you have to Add/Update/Remove files and fields in database . Please check below file for the information.

    • File name : README.md

    • Please be careful while making an updates this way, It might result in errors sometimes.

    • If it comes any issues while making an update, you are absolutely responsible for that since updating existing project is not included in the support.

Want to talk with us?