Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/miquelbeltran/flutter95
Windows95 UI components for Flutter apps. Bring back the nostalgic look and feel of old operating systems with this set of UI components ready to use.
https://github.com/miquelbeltran/flutter95
flutter hacktoberfest
Last synced: 7 days ago
JSON representation
Windows95 UI components for Flutter apps. Bring back the nostalgic look and feel of old operating systems with this set of UI components ready to use.
- Host: GitHub
- URL: https://github.com/miquelbeltran/flutter95
- Owner: miquelbeltran
- License: mit
- Created: 2020-06-18T07:37:51.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-10-28T12:47:59.000Z (about 1 year ago)
- Last Synced: 2024-10-19T00:38:19.760Z (20 days ago)
- Topics: flutter, hacktoberfest
- Language: Dart
- Homepage: https://pub.dev/packages/flutter95
- Size: 651 KB
- Stars: 195
- Watchers: 3
- Forks: 23
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-flutter-desktop - flutter95 - Windows95 UI components for Flutter apps. Bring back the nostalgic look and feel of old operating systems with this set of UI components ready to use. (Packages)
README
# Flutter95
Windows95 UI components for Flutter apps.
## Screenshots
## Components
#### Scaffold95
Scaffold as a Windows95 styled window.
* Provides title.
* Optional: toolbar that requires `Item95` action items.* If a scaffold `canPop` (meaning it is not a root of the app) then a close button appears.
```dart
Scaffold95(
title: 'Flutter95',
toolbar: Toolbar95(
actions: [
Item95(
label: 'File',
onTap: () {},
),
],
),
body: Container(),
)
```#### Menu95
Windows95 styled menu.
* Easy API wrapping Material's `showMenu`.
```dart
Menu95(
items: [
MenuItem95(
value: 1,
label: 'New',
),
MenuItem95(
value: 2,
label: 'Open',
),
MenuItem95(
value: 3,
label: 'Exit',
),
],
onItemSelected: (item) {},
);
```* Display using `show(context, position)`.
```dart
menu.show(
context,
Offset(50, 100),
);
```* Use it directly with Item95 to be positioned automatically.
```dart
Item95(
label: 'File',
menu: Menu95(...),
),
```#### Button95
Windows95 styled button.
* Provides default text style for child widgets.
* Provides default padding for children.
* If `onTap` is null, acts as a disabled button.```dart
Button95(
onTap: () {},
child: Text('Button95'),
)
```#### Checkbox95
Windows95 styled checkbox
* Provides label in windows95 style.
* If `onChanged` is null, acts as a disabled checkbox.
```dart
Checkbox95(
value: value,
label: "Some Label", // optional, if null no label is shown
onChanged: (value) {}, // optional, if null acts as a disabled checkbox
)
```#### TextField95
TextField styled as a Windows95 text field.
* Uses a Material TextField internally.
```dart
TextField95()
```#### Tooltip95
A tooltip widget designed in Windows95 style.
* Works just like Material's `Tooltip`.```dart
Tooltip95(
message: 'Hello from Flutter95!',
child: Text('I have a tooltip for you!'),
)
```#### Divider95
A divider widget designed in Windows95 style.
* Works just like Material's `Divider`.
* Supports indent, endIndent and height.```dart
Divider95()
```#### Elevation95
Creates an effect of deepness and elevation around Widgets.
```dart
Elevation95(
child: Text('Elevated Text')
)
```#### Flutter95.textStyle
TextStyle ready to use that copies the Windows95 text style.
```dart
Text(
'Text with Flutter95.textStyle',
style: Flutter95.textStyle,
);
```#### Dialogs
```dart
showDialog95(
context: context,
title: 'Error',
message: 'Task failed successfully',
);
```### Contributing
You can contribute in different ways:
- Creating new Windows95 styled components.
- Please include screenshots in your PRs!
- Please update the example and tests to include the new component!
- Improving existing components with better options.
- Improving documentation both in code and this README file.
- Creating more tests.
- Improving CI scripts.
- Fixing lint issues.
- Creating feature requests.
- Please include a screenshot.
- Also don't expect a quick response, this is a hobby project.
- Reporting bugs.### Acknowledgments
Heavily inspired by [React95](https://github.com/arturbien/React95).
Featured in [My Windows 95 ChatGPT app](https://www.youtube.com/watch?v=sXBWzFmLMxY) by @filiph.