Skip to content

mycalls/applimode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Applimode

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.

Demo

Configure your Applimode app

Overview of Configuration

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).

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.
  • Configure Cloudflare D1 (Optional) (Win, mac)

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)

Main Features

  • 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

Considerations for Deployment and Release

Initial Deployment

  • 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.

Releasing Mobile Apps

  • 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.

Additional Information

  • For detailed guidance on Google Play release, visit here.
  • For detailed guidance on App Store release, visit here.

Roadmap

  • 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.

Releases

Please see the changelog for more details about a given release.

Acknowledgements

Special thanks to these amazing projects which help power Applimode: