Coder Social home page Coder Social logo

naditech / flutter-tinhte_demo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from daohoangson/flutter-tinhte_demo

0.0 0.0 0.0 22.55 MB

Tinh tế mobile apps built with Flutter for evaluation purposes.

Home Page: https://tinhte.vn

Shell 0.35% Ruby 0.92% C++ 3.90% C 0.25% Objective-C 0.01% Java 0.36% Kotlin 0.02% Dart 87.57% TypeScript 2.58% Swift 0.87% CMake 3.17%

flutter-tinhte_demo's Introduction

tinhte_demo

Tinh tế mobile apps built with Flutter for evaluation purposes.

Try it

Google Play Store: Open Beta Testing

Apple App Store: TestFlight

Or check the PR / commit comments, this repo has GitHub Actions setup to build and upload the apps to GCS (automatically deleted after 30 days).

Features

Screenshots

Home

Wide Narrow

Thread view

Normal thread With post replies Poll
Tinhte Fact Background post

Interactive UI

Compare Galleria YouTube

FAQ

How to build the app?

All credentials are encrypted so you won't be able to compile the app immediately after a git pull. You have to replace the files mentioned in .gitattributes to build.

For example, lib/config.encrypted.dart should look like below:

import 'package:the_app/src/config.dart';

class Config extends ConfigBase {
  @override
  final apiRoot = 'https://domain.com/community/api/index.php';

  @override
  final clientId = 'abc';

  @override
  final clientSecret = 'xyz';

  @override
  final siteRoot = 'https://domain.com/community';
}

See How to use another package name? for more information to rename the app.

How to support a new language?

  1. Translate the lib/l10n/intl_messages.arb into your new language. Save it as /lib/l10n/intl_(language_code).arb.
  2. Execute ./tool/l10n_2.sh to generate l10n files
  3. Update supportedLocales param in lib/main.dart
  4. Update isSupported method in lib/src/intl.dart
  5. Update CFBundleLocalizations in ios/Runner/Info.plist to include the new language code

How to use another package name?

Pick a unique package name across Play Store and App Store then update these files:

  • .github/workflows/flutter.yml GCS_BUCKET, GCS_URL
  • android/app/build.gradle applicationId, signingConfigs.release
  • android/app/src/main/AndroidManifest.xml package, android:label
  • android/app/src/main/res/values/strings.xml app_name
  • android/fastlane/metadata/android/en-US/ title.txt, full_description.txt, short_description.txt
  • android/fastlane/Appfile
  • firebase/.firebaserc projects.default
  • ios/Runner.xcodeproj/project.pbxproj PRODUCT_BUNDLE_IDENTIFIER x2, PROVISIONING_PROFILE_SPECIFIER x2
  • ios/Runner/Info.plist CFBundleName, CFBundleURLSchemes
  • ios/fastlane/Appfile
  • ios/fastlane/Fastfile xcargs (PROVISIONING_PROFILE_SPECIFIER), manifest (appURL, displayImageURL, fullSizeImageURL)
  • ios/fastlane/Matchfile
  • linux/CMakeLists.txt APPLICATION_ID
  • macos/Runner/Configs/AppInfo.xcconfig
  • macos/Runner.xcodeproj/project.pbxproj PROVISIONING_PROFILE_SPECIFIER x3
  • macos/fastlane/Appfile
  • macos/fastlane/Fastfile notarize
  • macos/fastlane/Matchfile
  • windows/runner/Runner.rc
  • pubspec.yaml msix_config>identity_name
  • Re-run flutterfire configure to update Firebase apps

You will also need to move the files within android/app/src/main/java/com/daohoangson/flutter_ttdemo to another directory to match the new Android package.

For Firebase Messaging, execute these commands to set the proper config variables:

firebase functions:config:set websub.hub=https://domain.com/xenforo/api/index.php\?subscriptions

firebase functions:config:set websub.url=https://region-project.cloudfunctions.net/websub

flutter-tinhte_demo's People

Contributors

daohoangson avatar renovate[bot] avatar dependabot[bot] avatar renovate-bot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.