dumazy / FlutterShow

Unleash your creativity with presentations like never before! FlutterShow is an easy-to-use framework built in Flutter for crafting engaging and interactive presentations.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FlutterShow⚡️ - Presentations in Flutter

style: very good analysis License: MIT

Unleash your creativity with presentations like never before! FlutterShow⚡️ is an easy-to-use framework built in Flutter for crafting engaging and interactive presentations.

Check out the full documentation showcasing all slides here: https://flutter-show-docs.vercel.app/#/

Showcase

General Information

FlutterShow consists of two main packages: fluttershow_base and fluttershow_keynote:

  • fluttershow_base contains most of the pre-built widgets that are used in fluttershow_keynote, but can also be used to make custom slides.
  • fluttershow_keynote is currently the default package and implements all basic slides with variations of the popular presentation software Keynote.
  • The project utilizes riverpod hooks for state management, providing a simple and quick experience for managing your state.
  • The project is designed to be easily expandable and customizable according to your preferences. You can switch libraries like intl to easy_localizations or use fluttergen for asset organization.

Project Setup

To run your show, you can either use the pre-built launch.json file or follow these commands:

# Get dependencies
$ flutter pub get

# If language files were not generated
$ flutter pub run intl_utils:generate

# Run the app (for example on macOS)
$ flutter run -d macos

Getting Started

  • When you first explore the project, you'll find some sample slides that demonstrate how slides are built in this project.
  • To create a new slide, add a new widget in the lib/slides directory.
  • Once you finish creating your slide, navigate to lib/presentation/config/pages_of_presentation.dart and add a new member to the enum using your new widget.
  • Reload the app, and your slide will appear in all its glory! 🔥

Awesome features

Menu

The Menu (Open using M key): Toggle dark/light mode depending on the location you are presenting at or quickly jump between your slides.

Menu

Animations

Most slides and prebuilt widgets can be animated for a smoother experience. Simply pass an animationIndex parameter to enable animation on the desired slide or widget. In addition to animating individual slides and widgets, you can also animate the transitions between slides. An example of slide transition animation can be found in lib/slides/03_motivation/view/motivation.dart file.

Rebindable Keys

You can easily rebind your keys for actions like navigating to the next or previous slide and opening the menu. Simply edit the actions in lib/presentation/config/key_actions.dart.

About

Unleash your creativity with presentations like never before! FlutterShow is an easy-to-use framework built in Flutter for crafting engaging and interactive presentations.

License:MIT License


Languages

Language:Dart 45.6%Language:C++ 26.2%Language:CMake 21.6%Language:HTML 2.1%Language:C 1.6%Language:Ruby 1.6%Language:Swift 1.2%