English | 한글
Applimode is an open-source project inspired by the following ideas:
- Anyone, even without development experience, should be able to easily create their own blog or community service.
- Starting a service should have no upfront costs, and scaling it should remain affordable.
- Services should run seamlessly across multiple platforms.
Built on Firebase and Flutter, Applimode works smoothly on Android, iOS, and Web (PWA).With Applimode, you can create your own blog or community service in just a few hours.
Important
This guide is a summary. If you have any questions or encounter any problems during the process, please refer to this section (Win, mac).
- Download and install the following packages: Git (only Windows), VSCode · Flutter SDK (Win, mac), Android Studio (Win, mac), Xcode (only macOS), Rosetta 2 (only macOS), Homebrew (only macOS), rbenv · Ruby · CocoaPods (only macOS), Node.js · Firebase CLI · Flutterfire CLI (Win, mac)
- Visit the Firebase console, create a new project, and enable Authentication, Firestore Database, and Storage.
- Clone the Applimode repository and initialize it.
git clone https://github.com/mycalls/applimode.git
cp -r ./applimode/applimode-tool ./; node ./applimode-tool/index.js init; rm -r ./applimode-tool
- Open your initialized Applimode project in VS Code, and run the following commands.
flutter pub get
dart run build_runner build -d
flutterfire configure --platforms=android,ios,web
Note
when asked something, press n or N.
node ./applimode-tool/index.js firebaserc
firebase deploy --only firestore
firebase deploy --only storage
- If images are not displayed when building for the web (CORS issue), follow this step.
Additionally, you can set or configure the following:
- Build your Applimode app (Win, mac)
- Build and release a web app (Win, mac)
- Build an APK for Android (Win, mac)
- Change the images for the app icon and the launch screen (Win, mac)
- Add administrator (Win, mac)
- Admin settings and custom_settings.dart (Win, mac)
- Configure Cloudflare R2 (Optional) (Win, mac)
Note
- Instead of Firebase Cloud Storage, you can set up Cloudflare R2 as your media file storage
- The biggest advantage of R2 is that transfer fees are free. If you are building a video-centric app, I highly recommend using Cloudflare R2.
Note
Applimode supports hashtag search by default. If you want to use full-text search, use Cloudflare D1.
- Configure Cloudflare CDN (Optional) (Win, mac)
- Configure Youtube image proxy (Optional) (Win, mac)
- Configure Youtube video proxy (Optional) (Win, mac)
- Use your custom domain (Optional) (Win, mac)
- Upgrade your project with the new Applimode version (Win, mac)
- Add phone sign-in (Win, mac)
- Set up the AI assistant (Gemini) (Win, mac)
- Configure push notification (Win, mac)
- Configure Cloud Firestore Security Rules (Win, mac)
- Configure writing access for admin users only (Win, mac)
- Change the app's main color (Win, mac)
- Change the app's name (Win, mac)
- Change the organization name for the app (Win, mac)
- Troubleshooting (Win, mac)
- 5 Design Styles
- Support for Android, iOS, and Web (PWA)
- User registration via email and phone number
- Markdown support for post creation
- Text, image, and video insertion support for post creation
- AI writing assistance (Google Gemini)
- Text and image insertion support for comment creation
- Like and dislike feature for posts and comments
- Hashtag-based search support
- Category setting support
- Daily, monthly, and yearly ranking of posts and comments
- Report features for posts and comments
- Administrator settings page and management mode support
- User and post blocking by administrators
- Start with Web (PWA) for your initial deployment.
- Web deployment involves no upfront costs and minimal maintenance expenses for small-scale operations.
- The process is straightforward, with no significant restrictions, making it easy to get started.
- As your user base grows, consider releasing your app on Google Play (Android) and App Store (iOS).
- Publishing on these platforms requires a paid membership for each.
- For detailed guidance on Google Play release, visit here.
- For detailed guidance on App Store release, visit here.
- Make it even easier and more straightforward for users to deploy their services.
- Enable AI tools to assist in managing and optimizing services effectively.
- Introduce WebAssembly (WASM) to improve performance and speed up page loading.
- Allow all settings to be managed directly through the admin panel for greater convenience and control.
Please see the changelog for more details about a given release.
Special thanks to these amazing projects which help power Applimode: