Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/elrizwiraswara/app_image
A complete package for developers looking to implement advanced image display features in their Flutter applications with minimal effort.
https://github.com/elrizwiraswara/app_image
flutter-app flutter-image fullscreen-images image image-viewer image-widget
Last synced: 5 days ago
JSON representation
A complete package for developers looking to implement advanced image display features in their Flutter applications with minimal effort.
- Host: GitHub
- URL: https://github.com/elrizwiraswara/app_image
- Owner: elrizwiraswara
- License: mit
- Created: 2024-07-20T03:48:40.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-25T00:23:15.000Z (6 months ago)
- Last Synced: 2024-07-25T10:27:27.042Z (6 months ago)
- Topics: flutter-app, flutter-image, fullscreen-images, image, image-viewer, image-widget
- Language: Dart
- Homepage:
- Size: 11.5 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# App Image
`app_image` is a versatile Flutter package designed to simplify image handling within your applications. It provides a highly customizable `AppImage` widget that supports various image sources, including network URLs, asset paths, file paths, and memory images. This package features fade-in animations, custom placeholder and error widgets, full-screen image viewing, SVG support, and pre-caching capabilities.
## Features
- **Fade-in Animations**: Apply smooth fade-in effects with customizable durations and curves to enhance the visual experience.
- **Placeholder and Error Widgets**: Display custom placeholder and error widgets while the image loads or if an error occurs.
- **Full-Screen Image Viewer**: Enable full-screen viewing of images with a simple tap gesture.
- **SVG Support**: Seamlessly handle SVG images from network, asset, and file sources.
- **Pre-caching**: Pre-cache images to improve loading performance and provide a smoother user experience.
- **Automatic Image Provider Selection**: Automatically determine the appropriate image provider based on the image source, with the option to define the `ImgProvider` explicitly if needed.## Installation
Add the following to your `pubspec.yaml` file:
```yaml
dependencies:
app_image: ^1.0.9
```Then run `flutter pub get` to install the package.
## Usage
### Basic Usage```
import 'package:app_image/app_image.dart';
import 'package:flutter/material.dart';class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: AppImage(
image: 'https://example.com/image.jpg',
placeHolderWidget: CircularProgressIndicator(),
errorWidget: Icon(Icons.error),
fadeInDuration: Duration(milliseconds: 300),
fadeInCurve: Curves.easeIn,
enableFullScreenView: true,
),
),
),
);
}
}
```### Full-Screen Viewer
To enable full-screen viewing of images:```
AppImage(
image: 'https://example.com/image.jpg',
enableFullScreenView: true,
allImages: [
'https://example.com/image1.jpg',
'https://example.com/image2.jpg',
'https://example.com/image3.jpg',
],
);
```### Custom Placeholder and Error Widgets
You can customize the placeholder and error widgets:```
AppImage(
image: 'https://example.com/image.jpg',
placeHolderWidget: CircularProgressIndicator(),
errorWidget: Icon(Icons.broken_image),
);
```### SVG Support
To display SVG images:```
AppImage(
image: 'assets/image.svg',
);
```## Example
Check out the [example](example) directory for a complete sample app demonstrating the use of the app_image package.## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.## Support