Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maxeema/tonal_ui_flutter_assignment
Tonal - UI Coding Challenge (Flutter) - MetricsWidget
https://github.com/maxeema/tonal_ui_flutter_assignment
flutter tonal
Last synced: 4 days ago
JSON representation
Tonal - UI Coding Challenge (Flutter) - MetricsWidget
- Host: GitHub
- URL: https://github.com/maxeema/tonal_ui_flutter_assignment
- Owner: maxeema
- Created: 2021-12-10T11:34:22.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2021-12-11T10:47:41.000Z (almost 3 years ago)
- Last Synced: 2024-08-01T12:24:34.797Z (3 months ago)
- Topics: flutter, tonal
- Language: Dart
- Homepage:
- Size: 5.75 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tonal - UI Coding Challenge
Modern UI engineering is all about components. When we build components to be reusable, we enable faster iteration and higher consistency across the application and the company.
Available online https://maxeema.github.io/tonal_ui_flutter_assignment/index.html
![Screenshot](screenshot.png)
*Completed assignment with MetricsWidget demo app.*## Requirements
This project is to code a small "metrics" widget that we can reuse across different views. This widget displays a weight and a label. It can be used, for example, in the summary view for a strength assessment.
This widget should be built with Flutter. The widget is comprised of the following pieces:
- Label, STRING (ex: "Upper Body" or "Core")
- Weight, INTEGER (between 0 and 350)
- Unit (always "lbs")
- Background circle with graphDesign example
![Design](design.jpg)
Regarding fonts, the label is Helvetica. The weight and unit are [League Gothic](https://www.theleagueofmoveabletype.com/league-gothic).
When delivering this widget, please build a screen that demonstrates its use. This screen should also include a form that allows the user to modify the Label and the Weight to see the widget update as changes are made to the form.
## Included Assets
- `design.jpg`: The design as provided by a designer on the team. There are three examples of the widget in this design.
- `graph.svg`: An SVG of the background graph. The design shows different graphs, but for this exercise you can just use this one SVG for all widget instances. You can use the `flutter_svg` package to display the SVG in Flutter: https://pub.dartlang.org/packages/flutter_svg
- `styles.dart`: Some starter styles, exported from the original design.## Evaluation
We'll be focused on evaluating a few areas:
- Code organization. The widget should be separated from the demo screen. It should be easy to navigate the project.
- Code quality. The code should be understandable and commented when necessary. The widget should be written with the understanding that it will be used in many different places and require additional features in the future.
- Attention to detail. This widget was created by our design team, so they'll be concerned that their design is matched well in the final product. The product team will be concerned that the requirements are implemented as written.