A powerful new way to Reddit on iOS.

Overview

Slide for Reddit iOS App Store Reddit Discord

CI

Slide is a powerful open-source, ad-free, Swift-based Reddit browser for iOS. Feel free to join us on the official subreddit for discussion or requests!

Join us on Discord!





Sponsors

Thank you to our awesome Github Sponsors, who help keep the Slide project going

GitHub profile
KevinNThomas https://github.com/KevinNThomas
andrewkdinh https://github.com/andrewkdinh

If you're interested in sponsoring our work, check out the sponsor slots for Slide contributors on the right-hand Sponsorship menu

Getting started

To get started with Slide iOS development, you need to set up CocoaPods integration and open the Coacoapods workspace, not the default xcworkspace. NOTE: You must open the .xcworkspace file instead of the .xcodeproj file for dependencies to load. If you are having issues with Pods or are setting up the Slide repository for the first time, try the steps below.

Below are the steps to getting started:

  1. Clone this repo and open the Terminal
  2. In Terminal, run pod install
  3. Open "Slide for Reddit.xcworkspace" through Finder
  4. Modify /scripts/install-filter.sh with the information it asks for, then run it from the repo root directory (sh scripts/install-filter.sh). Once done, your developer info will automatically replace the defaults (even if you change branches!), and you can't accidentally overwrite the defaults. (If you don't want to do this, just put a new value in the USR_DOMAIN variable in the main target's Build Settings, then modify the signing info yourself. Make sure you don't commit changes to the signing info.)

If you are having trouble building on XCode 10 or MacOS Mojave

Try running chmod 666 Pods/Realm/include/RLMPlatform.h from Terminal in the project root directory.

If you don't have a paid Apple Developer account and you get warnings about iCloud entitlements

Select "none" for your team, go to the "Capabilities" section of the project build settings, and disable iCloud and IAP support. Then, add yourself back as the team and build!

If you still run into problems, feel free to shoot me a message on Reddit or Discord (above).

What needs to be done

Any issues are fair game, but any issue with the "Help Wanted" or "Enhancement" tags are issues that we would particularly love help with. If you have any questions or want to be pointed in the right direction, feel free to send me a PM on Reddit to /u/ccrama, or join us on Discord!

Issues

In any project, it's likely that a few bugs will slip through the cracks, so it helps greatly if people document any bugs they find to ensure that they get fixed promptly.

You can view a list of known issues and feature requests using the issue tracker. If you don't see your issue (or you aren't sure) feel free to submit it!

Where appropriate, a screenshot works wonders to help us see exactly what the issue is. You can upload screenshots directly using the GitHub issue tracker or by attaching a link (to Imgur, for example); whichever is easier for you.

Code

If you are a developer and wish to contribute to the app, please fork the project and submit a pull request.

If you have any questions, feel free to message me on Discord or drop me a message on Reddit.

Changes

For a detailed look at changes to the app you can view individual commits.

Licensing

Slide is licensed under the Apache 2 License.

If you find Slide's code useful or you use code from this repository, feel free to let me know!

Comments
  • Browsing through large albums causes crash

    Browsing through large albums causes crash

    The issue was noticed on an iPhone 6 Plus - 10.3.3 (14G60). Browsing through the following album causes a crash with no error message in Xcode's console.

    https://old.reddit.com/r/DIY/comments/96c6yc/we_dont_have_any_trees_but_i_wanted_to_build_a/

    The following changes resolve the issue for the above album:

    https://github.com/djjcast/Slide-iOS/commit/4838113fe8ab7bc0d5995cae9e62bf2c2d4f4a4e

    Although, the following, much larger, album still causes a crash with no error message:

    https://old.reddit.com/r/MechanicalKeyboards/comments/8vkbzd/june_2018_utah_meetup_higher_quality_pics_in/

    The following changes seem to improve performance but browsing the above album still eventually causes a crash:

    https://github.com/djjcast/Slide-iOS/commit/eba8d5a52b103be9e00ddb4eb460db64c7902934

    Maybe there's a memory leak somewhere? Browsing through albums causes the memory usage to continually increase - see https://stackoverflow.com/a/31819410 (not sure if it's true or still relevant). Maybe UIPageViewController isn't suited to be used as an image browser?

    Maybe the Gallery view can be repurposed as an album viewer since it seemed to perform well?

    bug 
    opened by djjcast 18
  • Not able to choose Firefox Klar for link handling

    Not able to choose Firefox Klar for link handling

    First of all thanks for the great app.

    The problem

    I'm not able to choose the browser "Firefox Klar" in the link handling settings. Maybe it has something to do with the fact that "Firefox Focus" support is already in place but in German speaking countries the app is available under a different name "Firefox Klar": https://support.mozilla.org/en-US/kb/difference-between-firefox-focus-and-firefox-klar

    Environment

    • Slide version that exhibits the issue: 2.1.2 build 84 (from German App Store)
    • iOS version used to run Slide: 12.1.4 (16D57)
    • iOS device type: iPhone 7
    • Installed Browser: Firefox Klar 8.0 (from German App Store)

    img_2013 img_2015

    opened by rm-rf-home 14
  • Crashing on iPad Pro (2016)

    Crashing on iPad Pro (2016)

    Crashes after scrolling for a few minutes. No specific pages or Subreddits cause the issue.

    Cleared cache without luck. Reinstalled without luck.

    iOS fully updated and no other device issues.

    Crashing starts with application stuttering and heating of device.

    bug help wanted needs reproduction 
    opened by scot-onet 11
  • Slide crashes after being jettisoned from RAM?

    Slide crashes after being jettisoned from RAM?

    Hello...

    Forgive me if this is a repeat, or not phrased well.

    On my iPad Pro 2nd Gen 12.9”, if I use Slide for a while, and then use multiple other apps for a while, and then try to use Slide again, it will attempt to relaunch with a black screen, and then immediately crash back to the Home screen. If I immediately relaunch, it will launch as if I’d gone to the app switcher and swiped it out. This only happens if I’ve used multiple other apps between uses of Slide. Maybe its a resuming thing, a RAM usage thing...I don’t know. But it happens multiple times per day.

    Hope this helps...I’m happy to give whatever other details you think might be useful

    opened by ghost 10
  • Youtube won't play some videos

    Youtube won't play some videos

    This one is interesting. Some videos just won't play at all, and the youtube player will say the video is broken or can't be found. That can be fixed by passing in the following params:

    "enablejsapi": 1,
    "origin": "http://www.youtube.com",
    

    I think this may be against the terms of service though. We should look into this.

    bug enhancement 
    opened by colejd 10
  • Bottom bar icons not showing up

    Bottom bar icons not showing up

    Slide 1.5 (27)

    iPhone 6s 11.1.2

    Navigating from a post to a linked cross post, then to the sub the x-post is from will make the bottom bar unusable. It’ll appear, but there will be no icons.

    https://streamable.com/dzcl3

    opened by incIined 10
  • App constantly crashing after opening, and after a few minutes of use

    App constantly crashing after opening, and after a few minutes of use

    iPhone 7 iOS: 12.1.4 Slide 3.0.1 build 111

    For the past few weeks Slide crashes at least half the time when opening. When open, It will usually crash again. I have tried cleaning the cache and history.

    When it crashes the app still runs in the background. Which means it will crash, then I still have to kill it in the background, and try launching again.

    Any help is appreciated.

    bug 
    opened by rci27 9
  • Add initial support for reddit.com/r/random

    Add initial support for reddit.com/r/random

    Here's some initial support for reddit.com/r/random for evaluation.

    A new subreddit is loaded when the content is refreshed by "pulling down" or using the "refresh" menu button. A new subreddit is also loaded when the sorting type is changed (like from "hot" to "rising") - I'm not sure if this behavior is appropriate.

    I wasn't sure how best to integrate the changes so feel free to modify and cleanup the code.

    See also https://github.com/ccrama/reddift/pull/3.

    opened by djjcast 9
  • App Icons for Share and Reply are wrong

    App Icons for Share and Reply are wrong

    Using the new live release.

    When in a comment thread, the icon to share is the split triangle. This is wrong and not the share icon for Apple devices.

    When in a comment thread, the icon to reply is a hooked arrow. This is wrong.

    When trying to POST a comment, the icon is the split sideways triangle. This is confusing, because it’s the same icon doing different things.

    a version of share icon

    Can you please update your icons to conform With standards that iOS users are familiar with?

    PS: please let me pad out the posts more, so there is additional space between the top, text, picture, buttons and bottom. It’s super cramped and really not great for readability.

    opened by tehdef 7
  • Clicking “Load More” in a comments thread causes the app to become unresponsive

    Clicking “Load More” in a comments thread causes the app to become unresponsive

    Hello!

    I’m currently on an iPhone 7 Plus running iOS 12 Beta 6, and using Slide 1.5 Build 33.

    For some reason, any time I try to click “Load More” in a comments thread, Slide eventually just turns to black, and is no longer responsive. I then need to go into the task switcher, and force close Slide.

    Here’s an example of what I’m seeing

    needs reproduction 
    opened by russjr08 7
  • Feature request - make subreddit/username clickable

    Feature request - make subreddit/username clickable

    iPhone 6S 11.1.2 Slide 1.3 (21)

    Image

    Instead of having to long press on the post title to bring up the menu to go to the subreddit or user page, we could go to the subreddit/user page directly from the post by clicking on that text.

    enhancement 
    opened by incIined 7
  • Bump addressable from 2.7.0 to 2.8.1

    Bump addressable from 2.7.0 to 2.8.1

    Bumps addressable from 2.7.0 to 2.8.1.

    Changelog

    Sourced from addressable's changelog.

    Addressable 2.8.1

    • refactor Addressable::URI.normalize_path to address linter offenses (#430)
    • remove redundant colon in Addressable::URI::CharacterClasses::AUTHORITY regex (#438)
    • update gemspec to reflect supported Ruby versions (#466, #464, #463)
    • compatibility w/ public_suffix 5.x (#466, #465, #460)
    • fixes "invalid byte sequence in UTF-8" exception when unencoding URLs containing non UTF-8 characters (#459)
    • Ractor compatibility (#449)
    • use the whole string instead of a single line for template match (#431)
    • force UTF-8 encoding only if needed (#341)

    #460: sporkmonger/addressable#460 #463: sporkmonger/addressable#463 #464: sporkmonger/addressable#464 #465: sporkmonger/addressable#465 #466: sporkmonger/addressable#466

    Addressable 2.8.0

    • fixes ReDoS vulnerability in Addressable::Template#match
    • no longer replaces + with spaces in queries for non-http(s) schemes
    • fixed encoding ipv6 literals
    • the :compacted flag for normalized_query now dedupes parameters
    • fix broken escape_component alias
    • dropping support for Ruby 2.0 and 2.1
    • adding Ruby 3.0 compatibility for development tasks
    • drop support for rack-mount and remove Addressable::Template#generate
    • performance improvements
    • switch CI/CD to GitHub Actions
    Commits
    • 8657465 Update version, gemspec, and CHANGELOG for 2.8.1 (#474)
    • 4fc5bb6 CI: remove Ubuntu 18.04 job (#473)
    • 860fede Force UTF-8 encoding only if needed (#341)
    • 99810af Merge pull request #431 from ojab/ct-_do_not_parse_multiline_strings
    • 7ce0f48 Merge branch 'main' into ct-_do_not_parse_multiline_strings
    • 7ecf751 Merge pull request #449 from okeeblow/freeze_concatenated_strings
    • 41f12dd Merge branch 'main' into freeze_concatenated_strings
    • 068f673 Merge pull request #459 from jarthod/iso-encoding-problem
    • b4c9882 Merge branch 'main' into iso-encoding-problem
    • 08d27e8 Merge pull request #471 from sporkmonger/sporkmonger-enable-codeql
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • 2 issues with using multireddits

    2 issues with using multireddits

    Missing features

    • There should be a "add to multireddit" option on the context menu of the subreddit, so I can add a subreddit to a multireddit while I'm currently viewing a specific subreddit's (newly recent) post listing.

    Usability issues

    • Subreddits I add to a multiReddit should be a different colour, so I can know what I recently added. This is useful if I'm adding 25+ multireddits at once.
    opened by desbest 0
  • discussion: connect to privacy front-end, instead directly to Reddit

    discussion: connect to privacy front-end, instead directly to Reddit

    I found no discussion about Teddit/Libreddit

    What you think add an option to connect not directly, but via Teddit/Libreddit for privacy reasons?

    Teddit: Alternative Reddit front-end focused on privacy - Lightweight, no ads, no JavaScript, unofficial API

    Official instance: https://teddit.net/
    Public instances: https://github.com/teddit-net/teddit#instances
    [Github mirror repository](https://github.com/teddit-net/teddit)
    Example: /r/Privacy on [Reddit](https://www.reddit.com/r/privacy) and [Teddit](https://teddit.net/r/privacy)
    

    Libreddit: Alternative front-end for Reddit. Themed around Reddit's new design - Lightweight, no JavaScript, no ads, no tracking

    Official instance: [libredd.it](https://libredd.it/)
    Public instances: https://github.com/spikecodes/libreddit#instances
    
    opened by GETandSELECT 0
  • Bump jmespath from 1.4.0 to 1.6.1

    Bump jmespath from 1.4.0 to 1.6.1

    Bumps jmespath from 1.4.0 to 1.6.1.

    Release notes

    Sourced from jmespath's releases.

    Release v1.6.1 - 2022-03-07

    • Issue - Use JSON.parse instead of JSON.load.

    Release v1.6.0 - 2022-02-14

    • Feature - Add support for string comparissons.

    Release v1.5.0 - 2022-01-10

    • Support implicitly convertible objects/duck-type values responding to to_hash and to_ary.

      [See related GitHub pull request #51](jmespath/jmespath.rb#51).

    Changelog

    Sourced from jmespath's changelog.

    1.6.1 (2022-03-07)

    • Issue - Use JSON.parse instead of JSON.load.

    1.6.0 (2022-02-14)

    • Feature - Add support for string comparisons.

    1.5.0 (2022-01-10)

    • Support implicitly convertible objects/duck-type values responding to to_hash and to_ary.

      [See related GitHub pull request #51](jmespath/jmespath.rb#51).

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Albums cause app to close

    Albums cause app to close

    While scrolling, if I tap an image that’s part of an album, the app closes.

    Link example: https://reddit.com/r/ImgursGreatestHits/comments/b0z810/happy_pi_day/

    Version 7.1.1 build 229 iOS 15.4.1

    opened by Auntben 0
Releases(7.0.2)
  • 7.0.2(Feb 28, 2021)

    7.0.2:

    • Fixes crash editing Selftext posts
    • Fixes link bubbles not populating on comments
    • Support for "old" Reddit flairs in submissions and comments
    • Fixes album overview button
    • Adds a new Slide Shortcut for Hidden posts
    • Fixes portrait MultiColumn issue on some iPads
    • Improves Custom Theme menus and sharing
    Source code(tar.gz)
    Source code(zip)
  • 7.0.0(Feb 17, 2021)

    Shiny New Backend

    v7 brings a brand new backend to Slide, which will help future-proof Slide and greatly improves Slide's performance and stability. This new backend was the perfect time to re-write AutoCache, and Slide's entire caching system has been built from the ground up to be faster, better looking, and more reliable!

    Desktop Mode

    This update brings a new option to iPad and M1 Mac users, called Desktop Mode. This mode will make the navigation sidebar sticky on the left side of the screen, and adds right-click (or two-finger tap for iPad users) to submissions and comments.

    Threaded Mail and new Profile Views

    Mail has gotten a refresh in v7, new messages will now show in a Thread View, which makes it easier to organize and read your mail! Profile and Inbox views have been re-designed as well.

    Quick User Switching

    Forgot to log out of your alt account and want to reply quickly from your main? Quick Username Switching is here, which allows you to swap accounts from comment reply and new submission menus across the app!

    & More

    • New ability to set your user flair and post flair (including icons!) in Subreddits
    • New option for "No Image Mode" in Settings > Card Layout, for a text-only subreddit layout
    • Support for iOS 14 image permissions, including "add-only" image support and the new iOS 14 image picker that allows you to select only specific images to share with Slide
    • Theme changes on iOS 13 and 14 are now instant across the app, and a v6 bug with theme switching on iPad has been fixed
    • Subreddit rules are now displayed in the "Submit" screen
    • New "Matte Black Everything" icon
    • New "Quote OP" button on reply toolbar
    • Images will now load in full-resolution after opening the image full screen, and zoom depth has been expanded for all image views
    • Added support for image and author flairs on Comments
    • Links will always open in the large detail view when in "Split Layout" mode on iPad
    • Fixed many issues and bugs with comments, and added better M1/Magic Keyboard support to gestures
    • Fixed issues with YouTube videos pausing playback on some devices
    • Fixed videos getting muted on device rotation
    • Fixed the "Auto-Hide Status Bar" on scroll option
    • Many bug fixes and performance improvements for a snappy v7 experience
    Source code(tar.gz)
    Source code(zip)
  • 6.0.11(Nov 24, 2020)

    • Huge performance gains in SingleSubVC, removed YYText for LinkCellView and implemented custom UITextView that can handle inline images and rounded background tags
    • Redesign of Moderation menu, added support for Mod Logs
    • New option to reduce shadows on LinkCellView
    • Implemented option to show banner images on Selftext posts
    • Fixed issue that could cause you to be stuck in the Subreddit chooser sidebar
    • Multireddits will now sync their icons from Reddit
    • Fixed freezing caused by edge gestures on SingleSubVC
    • Fixed iPad theme changing when backgrounded
    • Fixed "frontpage" widget not pulling posts
    • Fixed various rotation and modal display issues pre-iOS 13
    Source code(tar.gz)
    Source code(zip)
  • 6.0.10(Nov 11, 2020)

    • Brand new design for Reddit Awards! Awards are now condensed into a single line on each post, and tapping this view will open details about a posts awards. There is also a new option to disable awards completely in Settings > Card Layout
    • Support new Apple Font Picker, which lets you use installed fonts on iOS 13 and 14
    • Comments from blocked users will now be hidden by default
    • Improvements to YouTube playback and controls, thank you @ryannair05
    • New 'Sign in with Apple' option on the login page
    • Frontpage Slide Widgets will now show your subscriptions instead of the default Reddit frontpage
    • Fixed downloading videos with sound when triggered by the 3D touch menu
    • Fixed rotation on comments views, fixed issue where video would disappear during rotation
    • Fixed Subreddit colors disappearing during search
    • Fixed padding issues on iOS 13 and below
    Source code(tar.gz)
    Source code(zip)
  • v6.0.8(Oct 22, 2020)

    • Fixed split mode on iPad (portrait and landscape)
    • Fixed comments not loading sometimes from Search or Slide Widgets
    • Fixed double swipe-back with full gestures enabled on iPhone
    • Fixed sidebar sometimes becoming unresponsive
    • Fixed an issue that could cause Subreddits in popup mode to freeze
    Source code(tar.gz)
    Source code(zip)
  • v6.0.6(Oct 22, 2020)

    • Removed a lot of code from one of Slide’s backend libraries which will cut down on crashes considerably. An update to the library led to some internal thread management issues, and replacing this library all together is one of the major features I am planning for v6.1
    • Fixed some layout and behavior issues on pre-iOS 13 devices. This also fixes opening new subreddits from the sidebar
    • Fixed portrait Split Content mode on iPad
    • Fixed most iPad split-pane bugs
    • Added a new option to always show subreddits full screen on iPad
    • Added a new option to set the Multi Column count on portrait
    • Fixed hidden status bar mode
    • Fixed downloading v.redd.it videos with sound
    Source code(tar.gz)
    Source code(zip)
  • v6.0(Oct 21, 2020)

    • Slide just got a huge navigation upgrade, with a new homepage sidebar and improved navigation gestures across the app! The new split-content layout on iPad takes advantage of iOS 14's triple pane layout, and switching between your favorite subs and Slide actions is just a swipe away.
    • Follow hot posts, view account stats, and quickly visit your favorite subreddits with Slide's all-new Widgets!
    • Slide now fully supports iOS 14 features including improved Siri Shortcuts integration, limited Photos access, and the new Apple Color Picker.
    • New Community Icons brought to you by u/Baselt95, u/Username-Blank, u/hilabius, and u/SandwichEconomist
    • Slide gestures have been completely revamped! They look better, function more reliably, and don't interfere with swiping between subreddits and comments. Pro tip: swipe to the right from anywhere to exit at any time, and swipe from the right edge to go back to the last thing you closed. Note: you will have to re-enable gestures in v6 if you had them enabled before
    • I've taken a deep dive into Slide performance, memory usage, and speed improvements that should make Slide a lot more stable and performant across the board.

    Other changes include

    • An all-new History browser
    • Redesigned Subreddit Theme editor
    • Full support for Siri Shortcuts and Siri Suggestions
    • Redesigned swiping tabs bar
    • Support for Reddit Galleries and Polls
    • Sound on some more "video" sites...
    • Better support for the iPad Magic Keyboard
    • Redesign of Comments menus
    • Improvements to Live comment sorting
    • New option to disable comment popups on iPad
    • Improvements to on-device Notifications, which are free and never share credentials outside of your device
    • Tons of bug fixes, visual polish, and improvements throughout the app
    Source code(tar.gz)
    Source code(zip)
Owner
Haptic Apps
Delivering high-quality, open source Reddit clients for Android and iOS
Haptic Apps
IRGallery-swift is a powerful gallery for iOS.

IRGallery-swift IRGallery-swift is a powerful gallery for iOS. Features Captions. Rotation support. Load images locally or from a web URL. Custom UITa

Phil Chang 1 Oct 6, 2021
Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web

Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web. It provides you a chance to use a pure-Swift way to work

Wei Wang 20.9k Dec 30, 2022
TDD-Albums-II is a new hands-on tutorial for iOS engineers learning Test-Driven Development.

TDD-Albums-II Welcome! The TDD-Albums-II tutorial is a sequel to the original TDD-Albums library from 2015. The TDD-Albums library started as a hands-

Rick van Voorden 142 Nov 13, 2022
Image slide-show viewer with multiple predefined transition styles, with ability to create new transitions with ease.

ATGMediaBrowser ATGMediaBrowser is an image slide-show viewer that supports multiple predefined transition styles, and also allows the client to defin

null 200 Dec 19, 2022
Flutter openvpn - A new Flutter plugin that uses OpenVpn

flutter_openvpn A new Flutter plugin that uses OpenVpn. Installation Depend on i

Ferdi Gökdemir 0 Jan 8, 2022
new home for the non-Metal framework shims!

Moraea non-Metal Frameworks The core of the non-Metal patches: wrappers for downgraded frameworks, consisting of a mixture of autogenerated stubs and

Moraea 9 Jan 1, 2023
A better way to operate QR Code in Swift, support iOS, macOS, watchOS and tvOS.

EFQRCode is a lightweight, pure-Swift library for generating stylized QRCode images with watermark or icon, and for recognizing QRCode from images, in

EFPrefix 4.3k Jan 2, 2023
ZImageCropper is a simplest way to crop image to any shapes you like.

ZImageCropper ZImageCropper is a simplest way to crop image to any shapes you like. Example To run the example project, clone the repo, and run pod in

Mohammad Zaid Pathan 219 Dec 17, 2022
📸 A wrapper for AVCaptureSession - The way easier to use the Camera.

Capturer A wrapper for AVCaptureSession - The way easier to use the Camera. Setting up let captureBody = CaptureBody( configuration: .init { $0.

Muukii 11 Jul 13, 2022
URLImage is a package that holds an easy way of showing images from an URL.

URLImage Overview URLImage is a package that holds an easy way of showing images from an URL. Usually this processes should take the following process

Ramón Dias 1 Nov 1, 2021
A simple and flexible way to add source of overlapping circular pictures, currently supports horizontal overlapping or distant pictures with great layout flexibility.

THIS PROJECT IS NO LONGER MAINTAINED. STILL ONE ONLY BEST UI SOLUTION FOR UIKIT DEVELOPERS. SOON WILL COME UP WITH SWIFTUI STILL CONTRIBUTORS ARE WELC

Kiran Jasvanee 673 Dec 19, 2022
A simplest & base on protocol & swifty way to browse photo or video with hero animation.

JFHeroBrowser Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements Installation JFHe

逸风 22 Dec 19, 2022
CachedAsyncImage is the simplest way to add cache to your AsyncImage.

SwiftUI CachedAsyncImage ??️ CachedAsyncImage is AsyncImage, but with cache capabilities. Usage CachedAsyncImage has the exact same API and behavior a

Lorenzo Fiamingo 278 Jan 5, 2023
Agrume - 🍋 An iOS image viewer written in Swift with support for multiple images.

Agrume An iOS image viewer written in Swift with support for multiple images. Requirements Swift 5.0 iOS 9.0+ Xcode 10.2+ Installation Use Swift Packa

Jan Gorman 601 Dec 26, 2022
APNGKit is a high performance framework for loading and displaying APNG images in iOS and macOS.

APNGKit is a high performance framework for loading and displaying APNG images in iOS and macOS. It's built on top of a modified version of libpng wit

Wei Wang 2.1k Dec 30, 2022
An iOS/tvOS photo gallery viewer, useful for viewing a large (or small!) number of photos.

This project is unmaintained. Alex passed away in an accident in late 2019. His love of iOS development will always be remembered. AXPhotoViewer AXPho

Alex Hill 596 Dec 30, 2022
A lightweight generic cache for iOS written in Swift with extra love for images.

Haneke is a lightweight generic cache for iOS and tvOS written in Swift 4. It's designed to be super-simple to use. Here's how you would initalize a J

Haneke 5.2k Dec 11, 2022
✂️ Detect and crop faces, barcodes and texts in image with iOS 11 Vision api.

ImageDetect ImageDetect is a library developed on Swift. With ImageDetect you can easily detect and crop faces, texts or barcodes in your image with i

Arthur Sahakyan 299 Dec 17, 2022
A lightweight and fast image loader for iOS written in Swift.

ImageLoader ImageLoader is an instrument for asynchronous image loading written in Swift. It is a lightweight and fast image loader for iOS. Features

Hirohisa Kawasaki 293 Nov 24, 2022