{"id":13471276,"url":"https://github.com/Baseflow/flutter_cached_network_image","last_synced_at":"2025-03-26T13:30:56.188Z","repository":{"id":37277133,"uuid":"112842207","full_name":"Baseflow/flutter_cached_network_image","owner":"Baseflow","description":"Download, cache and show images in a flutter app","archived":false,"fork":false,"pushed_at":"2024-09-26T01:24:06.000Z","size":1025,"stargazers_count":2441,"open_issues_count":293,"forks_count":654,"subscribers_count":36,"default_branch":"develop","last_synced_at":"2024-10-29T11:49:15.802Z","etag":null,"topics":["baseflow","caching","flutter","image","imageprovider"],"latest_commit_sha":null,"homepage":"https://baseflow.com","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Baseflow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["Baseflow","renefloor"],"custom":"https://baseflow.com/contact"}},"created_at":"2017-12-02T12:57:53.000Z","updated_at":"2024-10-29T04:56:02.000Z","dependencies_parsed_at":"2024-01-26T05:08:45.233Z","dependency_job_id":"17c23700-2f0d-4a0e-a95a-52cbee41cfec","html_url":"https://github.com/Baseflow/flutter_cached_network_image","commit_stats":{"total_commits":290,"total_committers":42,"mean_commits":6.904761904761905,"dds":0.3310344827586207,"last_synced_commit":"0775e1f41dd6c3d1e1d0744365683390bc11a7d5"},"previous_names":["renefloor/flutter_cached_network_image"],"tags_count":43,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Baseflow%2Fflutter_cached_network_image","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Baseflow%2Fflutter_cached_network_image/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Baseflow%2Fflutter_cached_network_image/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Baseflow%2Fflutter_cached_network_image/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Baseflow","download_url":"https://codeload.github.com/Baseflow/flutter_cached_network_image/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245526518,"owners_count":20629837,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["baseflow","caching","flutter","image","imageprovider"],"created_at":"2024-07-31T16:00:42.550Z","updated_at":"2025-03-26T13:30:56.157Z","avatar_url":"https://github.com/Baseflow.png","language":"Dart","readme":"# Cached network image\n[![pub package](https://img.shields.io/pub/v/cached_network_image.svg)](https://pub.dartlang.org/packages/cached_network_image)\n[![codecov](https://codecov.io/gh/Baseflow/flutter_cached_network_image/branch/main/graph/badge.svg?token=I5qW0RvoXN)](https://codecov.io/gh/Baseflow/flutter_cached_network_image)\n[![Build Status](https://github.com/Baseflow/flutter_cached_network_image/workflows/app_facing_package/badge.svg?branch=develop)](https://github.com/Baseflow/flutter_cached_network_image/actions/workflows/app_facing_package.yaml)\n\nA flutter library to show images from the internet and keep them in the cache directory.\n\n\n\n## Sponsors \n \u003ca href=\"https://getstream.io/chat/flutter/tutorial/?utm_source=Github\u0026utm_medium=Github_Repo_Content_Ad\u0026utm_content=Developer\u0026utm_campaign=Github_Jan2022_FlutterChat\u0026utm_term=renefloor\" target=\"_blank\"\u003e\u003cimg width=\"250px\" src=\"https://stream-blog.s3.amazonaws.com/blog/wp-content/uploads/fc148f0fc75d02841d017bb36e14e388/Stream-logo-with-background-.png\"/\u003e\u003c/a\u003e\u003cbr/\u003e\u003cspan\u003e\u003ca href=\"https://getstream.io/chat/flutter/tutorial/?utm_source=Github\u0026utm_medium=Github_Repo_Content_Ad\u0026utm_content=Developer\u0026utm_campaign=Github_Jan2022_FlutterChat\u0026utm_term=renefloor\" target=\"_blank\"\u003eTry the Flutter Chat Tutorial 💬\u003c/a\u003e\u003c/span\u003e\n        \n        \n\n## How to use\nThe CachedNetworkImage can be used directly or through the ImageProvider.\nBoth the CachedNetworkImage as CachedNetworkImageProvider have minimal support for web. It currently doesn't include caching.\n\nWith a placeholder:\n```dart\nCachedNetworkImage(\n        imageUrl: \"http://via.placeholder.com/350x150\",\n        placeholder: (context, url) =\u003e CircularProgressIndicator(),\n        errorWidget: (context, url, error) =\u003e Icon(Icons.error),\n     ),\n ```\n \n Or with a progress indicator:\n ```dart\nCachedNetworkImage(\n        imageUrl: \"http://via.placeholder.com/350x150\",\n        progressIndicatorBuilder: (context, url, downloadProgress) =\u003e \n                CircularProgressIndicator(value: downloadProgress.progress),\n        errorWidget: (context, url, error) =\u003e Icon(Icons.error),\n     ),\n ```\n\n\n````dart\nImage(image: CachedNetworkImageProvider(url))\n````\n\nWhen you want to have both the placeholder functionality and want to get the imageprovider to use in another widget you can provide an imageBuilder:\n```dart\nCachedNetworkImage(\n  imageUrl: \"http://via.placeholder.com/200x150\",\n  imageBuilder: (context, imageProvider) =\u003e Container(\n    decoration: BoxDecoration(\n      image: DecorationImage(\n          image: imageProvider,\n          fit: BoxFit.cover,\n          colorFilter:\n              ColorFilter.mode(Colors.red, BlendMode.colorBurn)),\n    ),\n  ),\n  placeholder: (context, url) =\u003e CircularProgressIndicator(),\n  errorWidget: (context, url, error) =\u003e Icon(Icons.error),\n),\n```\n\n## How it works\nThe cached network images stores and retrieves files using the [flutter_cache_manager](https://pub.dartlang.org/packages/flutter_cache_manager). \n\n## FAQ\n### My app crashes when the image loading failed. (I know, this is not really a question.)\nDoes it really crash though? The debugger might pause, as the Dart VM doesn't recognize it as a caught exception; the console might print errors; even your crash reporting tool might report it (I know, that really sucks). However, does it really crash? Probably everything is just running fine. If you really get an app crashes you are fine to report an issue, but do that with a small example so we can reproduce that crash.\n\nSee for example [this](https://github.com/Baseflow/flutter_cached_network_image/issues/336#issuecomment-760769361) or [this](https://github.com/Baseflow/flutter_cached_network_image/issues/536#issuecomment-760857495) answer on previous posted issues.\n","funding_links":["https://github.com/sponsors/Baseflow","https://github.com/sponsors/renefloor","https://baseflow.com/contact"],"categories":["Dart","Flutter Project Showcase"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBaseflow%2Fflutter_cached_network_image","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBaseflow%2Fflutter_cached_network_image","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBaseflow%2Fflutter_cached_network_image/lists"}