Aus öffentlichen Paketdaten erstellte Orientierung.
Das page_animation_transition-Paket ermöglicht Entwicklern die Implementierung von reibungslosen und visuell ansprechenden Seitenübergängen in Flutter-Anwendungen auf mehreren Plattformen. Durch einfache Integration über einen einzigen Befehl verbessert es die Benutzererfahrung durch dynamische Ein- und Ausgangsanimationen zwischen Bildschirmen. Das Paket unterstützt Android, iOS, Web, macOS, Windows und Linux und ist somit vielseitig für plattformübergreifende Projekte geeignet. Es ist ideal für Apps, die mit minimalem Codeaufwand moderne, professionelle Navigationsflüsse bieten möchten.
Anwendungsfälle
Animierte Bildschirmübergänge in mobilen Apps hinzufügen
Verbesserung der Navigation von Webanwendungen
Engagierende Onboarding-Erfahrungen erstellen
Verbesserung der Benutzerengagement durch visuelle Rückmeldung
Interaktive Dashboards mit reibungslosem Routing gestalten
Benutzerdefinierte Gleit-, Fade- oder Skalierungseffekte implementieren
Hauptmerkmale
Unterstützt die Bereitstellung auf mehreren Plattformen
Erweiterbar für benutzerdefinierte Animationslogik
Geeignet für
Flutter-Entwickler, die schnelle Übergangseffekte suchen
Apps mit anspruchsvollem UI/UX
Plattformübergreifende Projekte für Desktop und Mobilgeräte
Designorientierte Anwendungen mit interaktiver Navigation
Anfänger lernen Flutter-Animationen
Hinweise
Kann eine Leistungstestung auf geringleistigen Geräten erfordern
Beschränkt auf grundlegende Animationsvorgaben ohne erweiterte Anpassungsmöglichkeiten
Abhängig von der Stabilität des Animation-Frameworks von Flutter
Nicht geeignet für hochkomplexe oder einzigartige Übergangslogik
Am besten mit konsistenter Gestaltungssprache über alle Bildschirme hinweg
Original-README
Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.
page_animation_transition
A lightweight Flutter package for adding beautiful, customizable page route
transition animations — slide, fade, scale, rotate, size, and diagonal
transitions — to Navigator.push, named routes, and declarative routers like
go_router, with full control over duration and easing curves. No
boilerplate PageRouteBuilder or Page code required.
If you're searching for a Flutter page transition animation package, a
custom Flutter route transition, a way to animate Navigator push/pop
transitions, or custom page transitions for go_router, this package
gets you there in one line of code.
18 ready-made transitions — slide (4 directions), slide + fade, fade,
scale, scale + fade, rotate, rotate + fade, size, and 4 diagonal slides —
covering the vast majority of page-transition needs out of the box.
One-line usage — wrap any page in PageAnimationTransition instead of
hand-rolling a PageRouteBuilder with Tweens and AnimatedBuilders.
Fully customizable timing — set duration, reverseDuration, curve,
and reverseCurve per navigation call, so transitions match your app's
motion design instead of a fixed default.
Works with every routing strategy — imperative Navigator.push, named
routes via onGenerateRoute, and declarative Navigator 2.0 routers such as
go_router, auto_route, Beamer, routemaster, and VRouter
via the bundled PageAnimationTransitionPage.
Zero extra dependencies — built entirely on Flutter's own
PageRouteBuilder, Page, Tween, and transition widgets, so it stays
small and has nothing extra to break or bloat your app.
Extensible — implement PageAnimationInterface to plug in your own
custom transition alongside the built-in ones.
Installation
Add page_animation_transition to your pubspec.yaml:
Using with go_router and other Router-based navigation
For apps built on Flutter's declarative Navigator 2.0 Router API — including
go_router, auto_route, Beamer, routemaster, and VRouter —
use PageAnimationTransitionPage instead of PageAnimationTransition. It's a
standard Page
implementation, so it plugs into any router that builds a list of Pages,
with no dependency on go_router (or any other router package) required.
PageAnimationTransitionPage supports the same duration, reverseDuration,
curve, and reverseCurve customization as PageAnimationTransition (see
Customizing duration and curves), plus
maintainState, fullscreenDialog, opaque, barrierDismissible,
barrierColor, and barrierLabel for full parity with MaterialPage and
go_router's CustomTransitionPage.
A runnable go_router example lives in
example/lib/go_router_main.dart — run it
with flutter run -t lib/go_router_main.dart from the example/ directory.
Example app
A complete, runnable example with a button for every transition (including a
custom duration/curve demo) lives in the example/ directory. Clone
this repository and run:
How do I add a page transition animation in Flutter?
Wrap the page you're navigating to in a PageAnimationTransition and pass it
to Navigator.push (or return it from onGenerateRoute) instead of using
MaterialPageRoute — see Quick start.
Can I control how fast the transition animates?
Yes — pass duration (and optionally reverseDuration) to
PageAnimationTransition. See Customizing duration and curves.
Can I use an easing curve like Curves.easeInOut or a bounce effect?
Yes — pass curve and, if you want a different easing on pop, reverseCurve.
Can I write my own custom transition?
Yes — implement PageAnimationInterface's single animate method and pass an
instance of your class as pageAnimationType.
Does this work with auto_route, Beamer, routemaster, or VRouter?
Yes — PageAnimationTransitionPage is a plain Page<T> with no dependency on
go_router, so it works with any router that builds a list of Pages,
including auto_route, Beamer, routemaster, and VRouter.
Does this replace Navigator or go_router?
No — PageAnimationTransition (imperative) and PageAnimationTransitionPage
(declarative) plug directly into Flutter's existing routing APIs. Neither
changes how you manage routes, only how they animate.
Support this project
If this package saved you time, consider:
Starring the repository on GitHub —
it helps other Flutter developers discover the package.
Issues and pull requests are welcome on
GitHub. If
you'd like to add a new transition, implement PageAnimationInterface in
lib/animations/ following the existing examples and add a widget test in
test/.