A social media application inspired by Instagram, built with Android and Firebase.
- User authentication (Login/Signup)
- Real-time messaging with audio support
- User profiles
- Image sharing capabilities
- Audio recording and playback
- Language: Java
- Platform: Android (API 24+)
- Backend: Firebase (Authentication & Realtime Database)
- Image Processing: Cloudinary
- Audio Processing: FFmpeg Kit
- Image Loading: Picasso
- Android Studio Arctic Fox or later
- JDK 11
- Android SDK (API 24 or higher)
- Firebase project setup
git clone https://github.com/yourusername/insta-copy.git
cd insta-copy- Launch Android Studio
- Click "Open an existing project"
- Navigate to the cloned repository folder
- Select the project and click "OK"
- Create a new Firebase project at Firebase Console
- Add an Android app to your Firebase project
- Use package name:
com.prashant.insta_copy - Download the
google-services.jsonfile - Place it in the
app/directory (replace existing one if needed) - Enable Authentication and Realtime Database in Firebase Console
- Sync the project with Gradle files
- Connect an Android device or start an emulator
- Click "Run" or press Shift+F10
app/
├── src/main/
│ ├── java/com/prashant/insta_copy/
│ │ ├── MainActivity.java
│ │ ├── Login.java
│ │ ├── signin.java
│ │ ├── profile.java
│ │ ├── availableuser.java
│ │ └── splashscreen.java
│ ├── res/
│ │ ├── layout/ # UI layouts
│ │ ├── drawable/ # Images and icons
│ │ └── values/ # Strings, colors, themes
│ └── AndroidManifest.xml
└── build.gradle.kts
The app requires the following permissions:
INTERNET- For network communicationRECORD_AUDIO- For voice messagesWRITE_EXTERNAL_STORAGE- For saving mediaREAD_EXTERNAL_STORAGE- For accessing media
- Firebase Authentication & Realtime Database
- FFmpeg Kit for audio processing
- Cloudinary for image management
- Picasso for image loading
- CircleImageView for profile pictures
- Fork the repository
- Create a feature branch (
git checkout -b feature/new-feature) - Commit changes (
git commit -am 'Add new feature') - Push to branch (
git push origin feature/new-feature) - Create a Pull Request
This project is for educational purposes.
For issues and questions, please create an issue in the GitHub repository.