Abhishek-Mallick / universal-box

Project scaffolding just got easier — streamline your development with Universal-Box's pre-built templates and one-click deployment! 🚀
https://universal-box.dev
Apache License 2.0
28 stars 26 forks source link

template: Flutter and Android/iOS #126

Closed jaiakash closed 1 month ago

jaiakash commented 1 month ago

Description

Added flutter template

Fixes #119

Type of Change

Please delete options that are not relevant.

Checklist

Summary by CodeRabbit

vercel[bot] commented 1 month ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
universal-box ✅ Ready (Inspect) Visit Preview 💬 Add feedback Oct 13, 2024 9:45am
coderabbitai[bot] commented 1 month ago

Walkthrough

This pull request introduces a new Flutter project template named universal_box_flutter, which includes essential files and configurations for building applications across multiple platforms, including Android, iOS, Linux, macOS, and Windows. Key additions include project metadata, configuration files, entry points, and UI resources, along with .gitignore files to manage ignored files for each platform.

Changes

File Path Change Summary
template/Mobile/universal_box_flutter/.gitignore New file added specifying ignored file patterns for Flutter, IntelliJ, VS Code, and obfuscation-related files.
template/Mobile/universal_box_flutter/.metadata New file created to track properties of the Flutter application, including version and supported platforms.
template/Mobile/universal_box_flutter/README.md New file created providing an overview of the universal_box_flutter project.
template/Mobile/universal_box_flutter/analysis_options.yaml New configuration file added to set up Dart analyzer with recommended lint rules.
template/Mobile/universal_box_flutter/android/.gitignore New entries added to specify files related to the Gradle build system to be ignored.
template/Mobile/universal_box_flutter/android/app/build.gradle New file created to set up necessary plugins and configurations for the Android application.
template/Mobile/universal_box_flutter/android/app/src/debug/AndroidManifest.xml New file created specifying the XML namespace declaration and INTERNET permission.
template/Mobile/universal_box_flutter/android/app/src/main/AndroidManifest.xml New file created defining the application and its main activity.
template/Mobile/universal_box_flutter/android/app/src/main/kotlin/com/example/universal_box_flutter/MainActivity.kt New class MainActivity defined as the entry point for the Flutter application on Android.
template/Mobile/universal_box_flutter/android/app/src/main/res/drawable-v21/launch_background.xml New file created defining a layer-list drawable for the launch splash screen.
template/Mobile/universal_box_flutter/android/app/src/main/res/drawable/launch_background.xml New file created defining a drawable resource for the launch splash screen.
template/Mobile/universal_box_flutter/android/app/src/main/res/values-night/styles.xml New styles added for theming the Android application in dark mode.
template/Mobile/universal_box_flutter/android/app/src/main/res/values/styles.xml New styles added for theming the Android application in light mode.
template/Mobile/universal_box_flutter/android/app/src/profile/AndroidManifest.xml New file created specifying INTERNET permission for development purposes.
template/Mobile/universal_box_flutter/android/build.gradle New file created configuring the Android project build settings.
template/Mobile/universal_box_flutter/android/gradle.properties New properties added configuring the Gradle build environment and library usage.
template/Mobile/universal_box_flutter/android/gradle/wrapper/gradle-wrapper.properties New properties added specifying the Gradle distribution settings.
template/Mobile/universal_box_flutter/android/settings.gradle New settings added defining plugin management and repository settings.
template/Mobile/universal_box_flutter/ios/.gitignore New entries added specifying files related to Flutter's build process to be ignored.
template/Mobile/universal_box_flutter/ios/Flutter/AppFrameworkInfo.plist New file added defining metadata for the Flutter application.
template/Mobile/universal_box_flutter/ios/Flutter/Debug.xcconfig Updated to include settings from Generated.xcconfig.
template/Mobile/universal_box_flutter/ios/Flutter/Release.xcconfig Updated to include settings from Generated.xcconfig.
template/Mobile/universal_box_flutter/ios/Runner.xcodeproj/project.pbxproj New Xcode project configuration file created defining the project's structure and build settings.
template/Mobile/universal_box_flutter/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata New file added defining the workspace configuration.
template/Mobile/universal_box_flutter/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist New file added containing workspace checks for macOS compatibility.
template/Mobile/universal_box_flutter/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings New file added containing workspace settings.
template/Mobile/universal_box_flutter/ios/Runner/AppDelegate.swift New class AppDelegate defined as the entry point of the application.
template/Mobile/universal_box_flutter/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json New file created defining app icon assets for various device sizes.
template/Mobile/universal_box_flutter/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json New file created defining launch images for different device resolutions.
template/Mobile/universal_box_flutter/ios/Runner/Base.lproj/LaunchScreen.storyboard New storyboard file created defining the layout for the launch screen.
template/Mobile/universal_box_flutter/ios/Runner/Base.lproj/Main.storyboard New storyboard file created defining the user interface layout for the application.
template/Mobile/universal_box_flutter/ios/Runner/Info.plist New file created containing essential metadata for the iOS application.
template/Mobile/universal_box_flutter/ios/Runner/Runner-Bridging-Header.h Import added to allow Swift code to access generated plugin registration.
template/Mobile/universal_box_flutter/ios/RunnerTests/RunnerTests.swift New class RunnerTests introduced for unit testing in Swift.
template/Mobile/universal_box_flutter/lib/main.dart New file created introducing the main entry point for the Flutter application.
template/Mobile/universal_box_flutter/linux/.gitignore Entry added to ignore ephemeral files generated by Flutter.
template/Mobile/universal_box_flutter/linux/CMakeLists.txt New file created establishing the build environment and settings for compiling the application on Linux.
template/Mobile/universal_box_flutter/linux/flutter/CMakeLists.txt New file created configuring the build for Flutter applications on Linux.
template/Mobile/universal_box_flutter/linux/flutter/generated_plugin_registrant.cc New file created containing a placeholder function for plugin registration.
template/Mobile/universal_box_flutter/linux/flutter/generated_plugin_registrant.h New file created declaring a function for registering Flutter plugins.
template/Mobile/universal_box_flutter/linux/flutter/generated_plugins.cmake New file created managing Flutter plugins for a Linux environment.
template/Mobile/universal_box_flutter/linux/main.cc New file created containing the entry point for the Flutter application on Linux.
template/Mobile/universal_box_flutter/linux/my_application.cc New file created implementing a custom GTK application for a Flutter project on Linux.
template/Mobile/universal_box_flutter/linux/my_application.h New file created declaring the MyApplication type for the Flutter application on Linux.
template/Mobile/universal_box_flutter/macos/.gitignore New entries added specifying files related to Flutter and Xcode to be ignored.
template/Mobile/universal_box_flutter/macos/Flutter/Flutter-Debug.xcconfig Updated to include settings from Flutter-Generated.xcconfig.
template/Mobile/universal_box_flutter/macos/Flutter/Flutter-Release.xcconfig Updated to include settings from Flutter-Generated.xcconfig.
template/Mobile/universal_box_flutter/macos/Flutter/GeneratedPluginRegistrant.swift New file created containing a function for registering generated plugins.
template/Mobile/universal_box_flutter/macos/Runner.xcodeproj/project.pbxproj New Xcode project configuration file created defining the project's structure and build settings.
template/Mobile/universal_box_flutter/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist New file added containing workspace checks for macOS compatibility.
template/Mobile/universal_box_flutter/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/xcschemes/Runner.xcscheme New file added defining the build and execution scheme for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner.xcworkspace/contents.xcworkspacedata New file added defining the workspace configuration.
template/Mobile/universal_box_flutter/macos/Runner/AppDelegate.swift New class AppDelegate defined as the main entry point for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json New file created defining app icon assets for various sizes.
template/Mobile/universal_box_flutter/macos/Runner/Base.lproj/MainMenu.xib New file created defining the user interface for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/Configs/AppInfo.xcconfig New file created containing application-level settings for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/Configs/Debug.xcconfig Updated to include settings from Flutter-Debug.xcconfig and Warnings.xcconfig.
template/Mobile/universal_box_flutter/macos/Runner/Configs/Release.xcconfig Updated to include settings from Flutter-Release.xcconfig and Warnings.xcconfig.
template/Mobile/universal_box_flutter/macos/Runner/Configs/Warnings.xcconfig New file created specifying compiler warning flags for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/DebugProfile.entitlements New file added defining entitlements for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/Info.plist New file created containing metadata for the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/MainFlutterWindow.swift New class MainFlutterWindow defined for the main window of the macOS application.
template/Mobile/universal_box_flutter/macos/Runner/Release.entitlements New file added specifying entitlements for the macOS application.
template/Mobile/universal_box_flutter/macos/RunnerTests/RunnerTests.swift New class RunnerTests introduced for unit testing in Swift.
template/Mobile/universal_box_flutter/pubspec.yaml New file created containing essential metadata and dependencies for the Flutter project.
template/Mobile/universal_box_flutter/test/widget_test.dart New file created introducing a widget test for the Flutter application.
template/Mobile/universal_box_flutter/web/index.html New file created defining the HTML structure for the web application.
template/Mobile/universal_box_flutter/web/manifest.json New file created defining the web application manifest with essential metadata.
template/Mobile/universal_box_flutter/windows/.gitignore New entries added specifying files related to Flutter and Visual Studio to be ignored.
template/Mobile/universal_box_flutter/windows/CMakeLists.txt New file created establishing the build environment and settings for compiling the application on Windows.
template/Mobile/universal_box_flutter/windows/flutter/CMakeLists.txt New file created configuring the build for Flutter applications on Windows.
template/Mobile/universal_box_flutter/windows/flutter/generated_plugin_registrant.cc New file created containing a placeholder function for plugin registration.
template/Mobile/universal_box_flutter/windows/flutter/generated_plugin_registrant.h New file created declaring a function for registering Flutter plugins.
template/Mobile/universal_box_flutter/windows/flutter/generated_plugins.cmake New file created managing Flutter plugins for a Windows environment.
template/Mobile/universal_box_flutter/windows/runner/CMakeLists.txt New file created configuring the build for the Windows application.
template/Mobile/universal_box_flutter/windows/runner/Runner.rc New resource script added defining resources necessary for the Windows application.

Assessment against linked issues

Objective Addressed Explanation
Provide a project template for React and Express (109) This PR does not address the React and Express template request.

Possibly related issues

🐇 In a world of code so bright,
A Flutter template takes its flight.
With files and configs all in place,
Developers can now embrace,
A project ready, swift, and neat,
Hop on in, let’s code and greet! 🌟


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
🪧 Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit , please review it.` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` - `@coderabbitai help me debug CodeRabbit configuration file.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (Invoked using PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai full review` to do a full review from scratch and review all the files again. - `@coderabbitai summary` to regenerate the summary of the PR. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. - `@coderabbitai help` to get help. ### Other keywords and placeholders - Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. - Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description. - Add `@coderabbitai` anywhere in the PR title to generate the title automatically. ### CodeRabbit Configuration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.
jaiakash commented 1 month ago

Hi @Abhishek-Mallick i have update the PR with your suggested changes.