A powerful React Native mobile application for downloading videos from Instagram and TikTok. Built with Expo and featuring a beautiful, modern UI with auto-download capabilities.

Downloads/VidSaver folder for organized, duplicate-free savingGet the latest APK from GitHub Releases
This app uses a custom high-performance FastAPI Backend to handle metadata fetching and direct download URL generation (bypassing CORS and rate limits).
The app is pre-configured to use the hosted backend:
https://fastapi-u8bm.onrender.comNo manual API key configuration is required for the user. The app automatically communicates with this service.
Clone the repository:
git clone https://github.com/fazi-gondal/vid-saver.git
cd vid-saver
Install dependencies:
npm install
Start the development server:
npx expo start
Run on your device:
a for Androidi for iOSvid-saver/
├── app/ # Expo Router pages
│ ├── (tabs)/ # Tab navigation screens
│ │ ├── index.tsx # Home screen
│ │ └── downloads.tsx # Downloads library
│ └── _layout.tsx # Root layout
├── components/ # Reusable components
├── services/ # API & storage services
├── utils/ # Utility functions
├── types/ # TypeScript type definitions
└── assets/ # Images, icons, fonts
Vid-Saver supports multiple build methods to suit your workflow.
Expo Application Services (EAS) is the default and recommended way to build production APKs.
Quick Start:
# Install EAS CLI
npm install -g eas-cli
# Login to Expo
eas login
# Build production APK
eas build --profile production --platform android
Build Profiles:
preview-apk: Fast builds for testingproduction: Optimized APK with ProGuard (25-35 MB)production-aab: App Bundle for Google Play Store (15-20 MB download)📖 See BUILD_COMMANDS.md for detailed EAS build commands and options.
For automated builds and CI/CD pipelines, use Codemagic:
Setup:
Features:
📖 See CODEMAGIC_SETUP.md for complete setup guide.
For developers who prefer complete control:
Requirements:
Steps:
# Generate native Android project
npx expo prebuild --clean --platform android
# Navigate to android folder
cd android
# Build release APK
./gradlew assembleRelease
Output: android/app/build/outputs/apk/release/app-release.apk
⚠️ Note: Local builds require manual signing for distribution.
Good news! EAS Build now automatically includes optimizations in production builds. No extra configuration in eas.json is required.
Production builds automatically include:
Expected Sizes:
📖 See APK_OPTIMIZATION.md for more advanced techniques like image optimization and architecture splits.
This project includes comprehensive documentation:
This project is licensed under the MIT License - see the LICENSE file for details.
Fazi Gondal
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This app is for educational purposes only. Please respect copyright laws and only download videos you have permission to download. The author is not responsible for any misuse of this application.
Screenshots coming soon
If you encounter any issues or have questions: