GithubHelp home page GithubHelp logo

flutter / gallery Goto Github PK

View Code? Open in Web Editor NEW
6.2K 151.0 1.5K 52.98 MB

Flutter Gallery was a resource to help developers evaluate and use Flutter

License: BSD 3-Clause "New" or "Revised" License

Kotlin 0.01% Ruby 0.10% Swift 0.05% Objective-C 0.01% Dart 98.60% HTML 0.23% CMake 0.42% C++ 0.56% C 0.03%
flutter dart

gallery's Introduction

Flutter CI Status Discord badge Twitter handle codecov CII Best Practices OpenSSF Scorecard SLSA 1

Flutter is Google's SDK for crafting beautiful, fast user experiences for mobile, web, and desktop from a single codebase. Flutter works with existing code, is used by developers and organizations around the world, and is free and open source.

Documentation

For announcements about new releases, follow the [email protected] mailing list. Our documentation also tracks breaking changes across releases.

Terms of service

The Flutter tool may occasionally download resources from Google servers. By downloading or using the Flutter SDK, you agree to the Google Terms of Service: https://policies.google.com/terms

For example, when installed from GitHub (as opposed to from a prepackaged archive), the Flutter tool will download the Dart SDK from Google servers immediately when first run, as it is used to execute the flutter tool itself. This will also occur when Flutter is upgraded (e.g. by running the flutter upgrade command).

About Flutter

We think Flutter will help you create beautiful, fast apps, with a productive, extensible and open development model, whether you're targeting iOS or Android, web, Windows, macOS, Linux or embedding it as the UI toolkit for a platform of your choice.

Beautiful user experiences

We want to enable designers to deliver their full creative vision without being forced to water it down due to limitations of the underlying framework. Flutter's layered architecture gives you control over every pixel on the screen and its powerful compositing capabilities let you overlay and animate graphics, video, text, and controls without limitation. Flutter includes a full set of widgets that deliver pixel-perfect experiences whether you're building for iOS (Cupertino) or other platforms (Material), along with support for customizing or creating entirely new visual components.

Reflectly hero image

Fast results

Flutter is fast. It's powered by hardware-accelerated 2D graphics libraries like Skia (that underpins Chrome and Android) and Impeller. We architected Flutter to support glitch-free, jank-free graphics at the native speed of your device.

Flutter code is powered by the world-class Dart platform, which enables compilation to 32-bit and 64-bit ARM machine code for iOS and Android, JavaScript and WebAssembly for the web, as well as Intel x64 and ARM for desktop devices.

Dart diagram

Productive development

Flutter offers stateful hot reload, allowing you to make changes to your code and see the results instantly without restarting your app or losing its state.

Hot reload animation

Extensible and open model

Flutter works with any development tool (or none at all), and also includes editor plug-ins for both Visual Studio Code and IntelliJ / Android Studio. Flutter provides tens of thousands of packages to speed your development, regardless of your target platform. And accessing other native code is easy, with support for both FFI (on Android, on iOS, on macOS, and on Windows) as well as platform-specific APIs.

Flutter is a fully open-source project, and we welcome contributions. Information on how to get started can be found in our contributor guide.

gallery's People

Contributors

alabhya268 avatar amanv8060 avatar clocksmith avatar dependabot[bot] avatar dnfield avatar domesticmouse avatar ferhatb avatar goderbauer avatar godofredoc avatar gspencergoog avatar guidezpl avatar hansmuller avatar harperl-lgtm avatar jason-simmons avatar jonahwilliams avatar josealba avatar justinmc avatar kevmoo avatar liyuqian avatar loic-sharma avatar mkustermann avatar olegzaimnlt avatar pennzht avatar perclasson avatar piinks avatar pq avatar rami-a avatar renzo-olivares avatar thkim1011 avatar xster avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gallery's Issues

Suggestion: add omit_local_variable_types to linter

For new code, we have been trying to omit types for local variables.
There are ~100 instances where we use types for local variables (mostly in the studies). We should consider adding this rule to our linter to be consistent. Something to consider is that these studies might be merged back into flutter/samples.

Acceptance Criteria

  • rule added and followed either everywhere, or everywhere except the studies

Migrated from material-components/material-components-flutter-gallery#163

Crane - Improve Focus support

Acceptance Criteria

  • You can only navigate the navigation at the top the first time, when you have reached the destinations it is not possible to go back to the top
  • If you shift-tab the first thing you do as you enter the app, it should scroll down all the way to the bottom as a destination on the bottom now has focus. (this should probably be a flutter/flutter issue)

Migrated from material-components/material-components-flutter-gallery#568

URL launcher plugin does not work on Windows/Linux

To repro

  • Launch app on windows/linux
  • Go into a demo and tap API doc button
  • Observe nothing happens

Acceptance Criteria

  • We should either find a way to launch a URL for windows/linux

The solution that was used for macOS doesn't work since it relies on a git URL and that doesn't work for linux/windows according to https://github.com/google/flutter-desktop-embedding/blob/master/plugins/README.md#dart

The alternative is to use a local path to the FDE repo but this is fragile and not a proper solution.

Migrated from material-components/material-components-flutter-gallery#293

Shrine: Improve Screenreader Support

Acceptance Criteria

  • Let the screen reader go through widgets in a desired order. (Fine tune OrdinalSortKey)

Potential Additions

  • Let every screen be read with a summary.
  • Let every page change have a voice feedback (such as closing the cart).

Plugin uses or overrides a deprecated API Warnings While Compiling Flutter Gallery To An APK

$ flutter build apk
Running "flutter packages get" in flutter_gallery...         1.1s
Initializing gradle...                                       2.4s
Resolving dependencies...                                   17.7s
Gradle task 'assembleRelease'...
Note: /Users/mit/dev/flutter/.pub-cache/hosted/pub.dartlang.org/video_player-0.6.4/android/src/main/java/io/flutter/plugins/videoplayer/VideoPlayerPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

[Performance] Rally numbers missing inside tab's content

To repro

  • Initial load, clicked through all the tabs and the numbers were there for each except budget
  • Then went back to the other tabs and the numbers were missing
  • Went back to main page
  • Opened rally again and now bills showed a number but the others didn't
  • After a few click through tabs the bills number also disappeared

Acceptance Criteria

*Numbers should not disappear

original issue: material-components/material-components-flutter-gallery#553

Finish Remaining Details of Shrine

Acceptance Criteria

Finish the following parts for the Shrine desktop layout:

  • 11-25 Desktop login screen (material-components/material-components-flutter-gallery#356)
  • Some minor details
    • 12-17 Use correct letter spacing for certain labels (flutter/samples#187)
    • Use correct vertical gaps between cards
      • Make sure vertical gaps between product cards on the product page have dimensions that match the specs file.
    • Use correct animation specs
      • Make sure all animations match specs file.
  • Scrollable vertical sidebar of categories (issue only visible when too many categories)
    • When the vertical sidebar contains too many categories (consider 10–20), it overflows instead of becomes scrollable.
    • Make it scrollable so that all categories can be accessed.
  • 11-21 Implement RTL support (material-components/material-components-flutter-gallery#297)

Related Issues

Show SF font on Android in the gallery

Demo'ing iOS looks on an Android device with the gallery looks weird currently due to typography. Figure out a way to bundle a SF or SF-like font so Android can display something nicer.

Gallery UI is extremely slow

I've installed Flutter Gallery app on my Android phone and noticed that animations, scrolling and transitions are lagging.

Interesting observation: often once particular animation was performed it not longer lags. Same applies to scrolling: once I scroll to the end of the list scrolling starts working fine.

Seems that there is some kind of cache that is populated and only after that acceptable performance is achieved.

Here is a demo:
https://drive.google.com/open?id=1ZXKLWQEYLpOcjd5h7ndrMqHhC1GW37Rg
Notice how slow is tap animation when I press the button first time.
Also the last screen (Contact Profile) is unusable: scrolling and overall performance is extremely slow.

I've also tested this app on Android Tablet and got the same behavior.

Phone: Samsung Galaxy S4 (GT-I9500)
Tablet: ASUS MeMO Pad FHD 10 (ME302C)

Gallery should implement full screen / edge-to-edge for Android Q+ devices

Currently, flutter_gallery shows a black bar on the bottom of the screen where the system gestures are for Android Q+. However, the recommendation by Android suggests that we should now be making the system navigation bar transparent to take advantage of the entire screen.

What it looks like now:
example_bar

What it should look like:
transparent_bar

Code segment generator will get different imports on unix and macOS, verify-l10n is different on windows

Code segments generator has different output for unix and macOS

See the transformations demo.

In the subsegment transformationsDemo#2 we have the imports and these are the outputs generated on a macOS system:

import 'dart:collection' show IterableMixin;
import 'dart:math';
import 'dart:ui' show Vertices;
import 'package:flutter/material.dart' hide Gradient;
import 'package:vector_math/vector_math_64.dart' show Vector3;

In the subsegment transformationsDemo#3 we have the imports and theser are the outputs generated on Ubuntu:

import 'package:flutter/material.dart';
import 'package:vector_math/vector_math_64.dart' show Vector3;
import 'transformations_demo_inertial_motion.dart';

Verify l10n has different output on Windows

To be debugged.

Migrated from material-components/material-components-flutter-gallery#565

Monitor performance of Flutter Gallery

Maybe we can start with some in-house apps such as Flutter gallery and Google Ads using Android Vitals and Firebase Performance Monitoring.

Some interesting metrics might be: crashes, ANRs, battery, FPS, memory, startup time, frame build/rasterize time, latency...

The Flutter team is now focusing on Add performance monitoring to Gallery on web/iOS/Android flutter/flutter#69

As a first step, we'll close this issue once

  • #69 is closed.
  • some publicly shareable performance metrics for the new gallery app on real user devices are added to our public performance dashboard.
  • document how the new Gallery added the monitoring so developers can follow that.

Implement category tile expansion with translucency and scroll beneath

Acceptance Criteria

  • When category is expanded the header moves to the top of the screen
  • Header then has translucency and demos scroll beneath it
  • This could maybe be done by presenting a new route with a custom transition (maybe using a Hero)
  • The UX is a bit unclear as to what happens when you scroll to the top

Screen Shot 2020-01-29 at 4 40 30 PM

Related to material-components/material-components-flutter-gallery#346

Migrated from material-components/material-components-flutter-gallery#100

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.