{"id":19584977,"url":"https://github.com/forem/foremwebview-ios","last_synced_at":"2025-04-27T11:33:10.813Z","repository":{"id":43306897,"uuid":"299436576","full_name":"forem/ForemWebView-ios","owner":"forem","description":"Forem core interface SDK","archived":false,"fork":false,"pushed_at":"2023-11-15T19:35:38.000Z","size":314,"stargazers_count":18,"open_issues_count":11,"forks_count":8,"subscribers_count":12,"default_branch":"main","last_synced_at":"2023-11-15T20:34:28.527Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/forem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2020-09-28T21:32:50.000Z","updated_at":"2023-10-27T08:11:23.000Z","dependencies_parsed_at":"2023-01-20T03:18:13.996Z","dependency_job_id":null,"html_url":"https://github.com/forem/ForemWebView-ios","commit_stats":null,"previous_names":[],"tags_count":20,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forem%2FForemWebView-ios","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forem%2FForemWebView-ios/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forem%2FForemWebView-ios/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forem%2FForemWebView-ios/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forem","download_url":"https://codeload.github.com/forem/ForemWebView-ios/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224069554,"owners_count":17250454,"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":[],"created_at":"2024-11-11T07:51:59.044Z","updated_at":"2024-11-11T07:51:59.914Z","avatar_url":"https://github.com/forem.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ForemWebView - iOS\n\nThis is the WKWebView customization that powers the Forem (coming soon) and [DEV](https://github.com/thepracticaldev/DEV-ios) mobile apps.\n\n## Requirements\n\nThe Project supports iOS 13.x but features like Picture in Picture are only available for iPhones on iOS 14.x\n\n## Installation\n\nThe Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler. Once you have your Swift package set up, adding ForemWebView as a dependency is as easy as adding it to the dependencies value of your Package.swift.\n\n```swift\ndependencies: [\n    .package(url: \"https://github.com/forem/ForemWebView-ios.git\", .upToNextMajor(from: \"1.0.0\"))\n]\n```\n\n#### Carthage \u0026 CocoaPods\n\nWe've moved to supporting SPM and not Carthage or CocoaPods. If interested in contributing, PRs to support these are welcome!\n\n## Usage\n\nAfter importing the framework into your project you can initialize the ForemWebView like you would any other WKWebView (Storyboard, programmatically, etc). This custom `WKWebView` implementation will handle it's own `WKNavigationDelegate`, so instead of implementing this logic yourself please rely on the provided `ForemWebViewDelegate` for callbacks.\n\nWe have two *deep dive* documents:\n- [ForemWebView deep dive](/docs/ForemWebView-deep-dive.md) is a walkthrough of the capabilities available when you're using the Framework in your project\n- [Native Bridge deep dive](/docs/native-bridge-deep-dive.md) documents the native interface used to communicate between the Web (DOM + JS) and Swift contexts\n\n#### Important notes:\n- Using SwiftUI? [We would appreciate your feedback after trying out the framework](https://github.com/forem/ForemWebView-ios/issues/4).\n- If your project requires more detailed access to `WKNavigationDelegate` callbacks [please add a feature request](https://github.com/forem/ForemWebView-ios/issues/new?template=feature_request.md).\n\n## Contributing\n\nBug reports and feature requests are welcome in the [issue tracker](https://github.com/forem/ForemWebView-ios/issues).\n\nFor Pull Requests:\n1. Fork and clone the project.\n1. Create a branch, naming it either a feature or bug: git checkout -b feature/that-new-feature or bug/fixing-that-bug\n1. Code and commit your changes. Bonus points if you write a [good commit message](https://chris.beams.io/posts/git-commit/): git commit -m 'Add some feature'\n1. Push to the branch: git push origin feature/that-new-feature\n1. Create a pull request for your branch 🎉\n\n#### Project Tests\n\nThe tests are run using the Example app bundled in the project. You can use XCode to run the test suite or from a Terminal with the following command:\n\n```bash\n# Make sure the `destination` param is using an iOS/Simulator available in your local environment\nset -o pipefail \u0026\u0026 xcodebuild -scheme ForemWebView -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=14.2,name=iPhone 12 Pro Max' test | xcpretty\n```\n\n## License\n\nThis program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Please see the [LICENSE](./LICENSE) file in our repository for the full text.\n\nLike many open source projects, we require that contributors provide us with a Contributor License Agreement (CLA). By submitting code to the Forem project, you are granting us a right to use that code under the terms of the CLA.\n\nOur version of the CLA was adapted from the Microsoft Contributor License Agreement, which they generously made available to the public domain under Creative Commons CC0 1.0 Universal.\n\nAny questions, please refer to our [license FAQ](https://docs.forem.to/licensing/) doc or email yo@dev.to\n\n\u003cbr/\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg\n    alt=\"sloan\"\n    width=250px\n    src=\"https://thepracticaldev.s3.amazonaws.com/uploads/user/profile_image/31047/af153cd6-9994-4a68-83f4-8ddf3e13f0bf.jpg\"\n  /\u003e\n  \u003cbr/\u003e\n  \u003cstrong\u003eHappy Coding\u003c/strong\u003e ❤️\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fforem%2Fforemwebview-ios","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fforem%2Fforemwebview-ios","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fforem%2Fforemwebview-ios/lists"}