

EchoLater - Anonymous Message PHP And Flutter AppEchoLater - Anonymous Message PHP And Flutter App
Send anonymous letters, messages, audio, and images to the future. Complete PHP script with Flutter mobile app for private and pub
EchoLater - Anonymous Message PHP And Flutter App
Send anonymous letters, messages, audio, and images to the future. Complete PHP script with Flutt...
Overview
EchoLater is an innovative platform available as both a web application (PHP) and a full-featured Flutter mobile app. Users can write anonymous letters or messages, schedule them for future delivery, and attach voice notes or images. Messages can be public or private, with the option to reveal or hide the sender’s name.
The system includes a secure user login and registration system, token-based authentication, real-time notifications, and an advanced admin panel for moderating messages and media uploads. The interface is modern, responsive, and supports multi-language and RTL/LTR layouts.
EchoLater is perfect for anonymous confessions, personal reflections, community engagement, or sending messages to yourself or others in the future – whether on the web or mobile.
Features
Web app (PHP) and complete Flutter mobile app
Write and schedule anonymous messages to the future
Supports text, audio/voice recordings, and image uploads
Public feed & private inbox
Show or hide sender name (anonymity option)
User registration, login, and token-based authentication
Real-time delivery and notifications
Admin panel for message and media moderation
Modern, mobile-friendly responsive design
Multi-language and RTL/LTR support
Free updates
Requirements
Web server with PHP 7.4+ or PHP 8.x
MySQL 5.7+ or MariaDB
Flutter 3.x (for mobile app deployment)
Enabled PHP extensions: PDO, cURL, mbstring, GD
Apache/Nginx/LiteSpeed web server
Basic knowledge of hosting and FTP
Instructions
Installation Instructions
Web & Backend Installation
-
Unzip and Upload Files
-
Unzip the script package and upload all files to your server (usually to
public_html
).
-
Unzip the script package and upload all files to your server (usually to
-
Create Database and Import
- In your hosting control panel (e.g., cPanel), create a new MySQL database and user.
-
Import the
database.sql
file from the script package.
-
Edit Database Connection
-
Open
config.php
and update:php نسختحرير define('DB_HOST', 'localhost'); define('DB_NAME', 'your_database'); define('DB_USER', 'your_username'); define('DB_PASS', 'your_password');
-
Open
-
Update Secret Key
-
In
/includes/jwt_utils.php
, change the$secret_key
variable to a secure, random value for your site.
-
In
-
Admin Panel Access
-
Login to the admin panel at:
makefile نسختحرير https://yourdomain.com/admin_login.php Username: admin Password: admin
Important: Change the admin password after your first login!
-
Login to the admin panel at:
-
Update Settings
- Update SEO settings, website name, and homepage translations as needed from the admin panel.
-
Configure AdMob
- If using AdMob, update your AdMob unit IDs in the app settings.
Mobile App Installation (Flutter)
-
Import the Flutter Project
- Open Android Studio, select "Open an existing project," and choose the Flutter app folder.
-
Run
flutter doctor
in the terminal to check for missing dependencies. -
Connect your device or use an emulator, then run
flutter run
.
-
Update Server URL
-
In your Flutter project, update the base URL in:
-
lib/services/api_service.dart
-
lib/services/auth_service.dart
-
-
Example:
dart نسختحرير static const String baseUrl = 'https://yourdomain.com';
-
In your Flutter project, update the base URL in:
-
Google Sign-In Setup
- Generate a new OAuth 2.0 Client ID for your app on Google Cloud Console.
-
Download and replace the
google-services.json
inandroid/app/
.
-
Customize App Name & Version
-
Change the app name in
android/app/src/main/AndroidManifest.xml
. -
Change the version in
android/app/build.gradle.kts
.
-
Change the app name in
-
Add/Change Logo & Splash
-
Place your logo in
assets/images/
and splash inassets/splash.png
. -
Declare them in
pubspec.yaml
, then runflutter pub get
.
-
Place your logo in
-
Change App Icon
-
Replace the default icon files in
android/app/src/main/res/mipmap-*
.
-
Replace the default icon files in
-
Change Package Name
-
Edit all references to the package name in your Android project, or use:
lua نسختحرير flutter pub run rename --bundleId com.yourcompany.yourapp
-
Edit all references to the package name in your Android project, or use:
-
Configure Keystore for Release
-
Add your keystore to
android/app
, and updatekey.properties
.
-
Add your keystore to
-
Update AdMob App ID
-
Change the AdMob ID in
android/app/src/main/AndroidManifest.xml
:xml نسختحرير <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
-
Change the AdMob ID in
For full details and screenshots, please refer to the included HTML documentation.
If you face any issue, check the “Troubleshooting” section in the docs.
Other items by this author
Category | Scripts & Code / PHP Scripts / Miscellaneous |
First release | 24 July 2025 |
Last update | 24 July 2025 |
Software version | PHP 7.4, PHP 8.0, PHP 8.1, PHP 8.2, PHP 8.4 |
Files included | .php, .css, .html |
Tags | multi language, php script, audio, admin panel, anonymous, scheduling, inbox, letter, rtl, image upload, voice message, flutter app, private message, future message, time capsule, public feed |