folio-sec / Imagepipeline
Licence: mit
Folio Image Pipeline is an image loading and caching framework for iOS clients
Stars: ✭ 170
Programming Languages
swift
15916 projects
Projects that are alternatives of or similar to Imagepipeline
Sdwebimage
Asynchronous image downloader with cache support as a UIImageView category
Stars: ✭ 23,928 (+13975.29%)
Mutual labels: webp, cache
Jstarcraft Core
目标是提供一个通用的Java核心编程框架,作为搭建其它框架或者项目的基础. 让相关领域的研发人员能够专注高层设计而不用关注底层实现. 涵盖了缓存,存储,编解码,资源,脚本,监控,通讯,事件,事务9个方面.
Stars: ✭ 150 (-11.76%)
Mutual labels: cache
Action Docker Layer Caching
🐳 Enable Docker layer caching in GitHub Actions
Stars: ✭ 160 (-5.88%)
Mutual labels: cache
Libcache
A Lightweight in-memory key:value cache library for Go.
Stars: ✭ 152 (-10.59%)
Mutual labels: cache
Lru Cache
💫 A feature complete LRU cache implementation in C++
Stars: ✭ 162 (-4.71%)
Mutual labels: cache
Metadata Extractor
Extracts Exif, IPTC, XMP, ICC and other metadata from image, video and audio files
Stars: ✭ 1,972 (+1060%)
Mutual labels: webp
Holster
A place to keep useful golang functions and small libraries
Stars: ✭ 166 (-2.35%)
Mutual labels: cache
Xcode Clean.sh
Bash script freeing up disk space by removing Xcode generated data
Stars: ✭ 164 (-3.53%)
Mutual labels: cache
Study
全栈工程师学习笔记;Spring登录、shiro登录、CAS单点登录和Spring boot oauth2单点登录;Spring data cache 缓存,支持Redis和EHcahce; web安全,常见web安全漏洞以及解决思路;常规组件,比如redis、mq等;quartz定时任务,支持持久化数据库,动态维护启动暂停关闭;docker基本用法,常用image镜像使用,Docker-MySQL、docker-Postgres、Docker-nginx、Docker-nexus、Docker-Redis、Docker-RabbitMQ、Docker-zookeeper、Docker-es、Docker-zipkin、Docker-ELK等;mybatis实践、spring实践、spring boot实践等常用集成;基于redis的分布式锁;基于shared-jdbc的分库分表,支持原生jdbc和Spring Boot Mybatis
Stars: ✭ 159 (-6.47%)
Mutual labels: cache
Cacheable Response
An HTTP compliant route path middleware for serving cache response with invalidation support.
Stars: ✭ 157 (-7.65%)
Mutual labels: cache
Fastflix
FastFlix is a free GUI for HEVC and AV1 encoding, GIF/WebP creation, and more!
Stars: ✭ 154 (-9.41%)
Mutual labels: webp
Cachemanager
CacheManager is an open source caching abstraction layer for .NET written in C#. It supports various cache providers and implements many advanced features.
Stars: ✭ 2,049 (+1105.29%)
Mutual labels: cache
Android Cache Fix Gradle Plugin
Gradle plugin to fix Android caching problems
Stars: ✭ 150 (-11.76%)
Mutual labels: cache
Strapi Middleware Cache
🔌 A cache middleware for https://strapi.io
Stars: ✭ 146 (-14.12%)
Mutual labels: cache
Cachew
Transparent and persistent cache/serialization powered by type hints
Stars: ✭ 155 (-8.82%)
Mutual labels: cache
Dataloader Php
DataLoaderPhp is a generic utility to be used as part of your application's data fetching layer to provide a simplified and consistent API over various remote data sources such as databases or web services via batching and caching.
Stars: ✭ 160 (-5.88%)
Mutual labels: cache
Http Cache Semantics
RFC 7234 in JavaScript. Parses HTTP headers to correctly compute cacheability of responses, even in complex cases
Stars: ✭ 169 (-0.59%)
Mutual labels: cache
ImagePipeline
Folio Image Pipeline is an image loading and caching framework for iOS clients
Usage
let imagePipeline = ImagePipeline()
imagePipeline.shared.load(/* image URL */, into: /* image view */, transition: .fadeIn /* default is `.none`*/,
defaultImage: ..., failureImage: ...)
Example
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! Cell
ImagePipeline.shared.load(urls[indexPath.row % 200],
into: cell.imageView,
transition: .fadeIn,
defaultImage: UIImage(named: "loading")!,
failureImage: UIImage(named: "failed")!)
return cell
}
Resize
Aspect Fit (Default)
let resizer = ImageResizer(targetSize: CGSize(width: 400, height: 400))
ImagePipeline.shared.load(/* imageURL */, into: /* image view */, processors: [resizer])
Original | Resized |
---|---|
Aspect Fill
let resizer = ImageResizer(targetSize: CGSize(width: 400, height: 400), contentMode: .aspectFill)
ImagePipeline.shared.load(/* imageURL */, into: /* image view */, processors: [resizer])
Original | Resized |
---|---|
Resize & Blur
let scale: CGFloat = 2
let size = CGSize(width: 375 * scale, height: 232 * scale)
let resizer = ImageResizer(targetSize: size, contentMode: .aspectFill)
let filter = BlurFilter(style: .light)
ImagePipeline.shared.load(/* imageURL */, into: /* image view */, processors: [resizer, filter])
Original | Blurred |
---|---|
TTL
ImagePipeline respects the max-age
value of Cache-Control
response header, and sets independent TTL for each image.
Supported content types
✅ PNG
✅ JPEG
✅ GIF
✅ WebP
Installation
Carthage
github "folio-sec/ImagePipeline"
Then run carthage update
.
Follow the current instructions in Carthage's README for up to date installation instructions.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].