Swiftpack.co - lszzy/FWFramework as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by lszzy.
lszzy/FWFramework 5.3.1
iOS development framework, mainly solves the routine and pain points in native development, and builds a modular project structure to facilitate iOS development. iOS开发框架,主要解决原生开发中的常规和痛点问题,搭建模块化项目架构,方便iOS开发。
⭐️ 9
🕓 Yesterday
iOS macOS
.package(url: "https://github.com/lszzy/FWFramework.git", from: "5.3.1")

FWFramework

Pod Version Pod Platform Pod License Carthage compatible

中文

Tutorial

iOS development framework, mainly solves the routine and pain points in native development, and builds a modular project structure to facilitate iOS development.

* Modular architecture design, with built-in Mediator middleware, Router routing and other components
* Supports advanced features such as Swift coroutine async, await, property annotation propertyWrapper, macro, etc.
* Easily customizable UI plug-ins, including pop-up windows, toast, empty interface, pull-down refresh, image selection and other plug-ins
* Completely replaceable network images and network request layer, compatible with SDWebImage, Alamofire, etc. by default
* Automatically updated AutoLayout chain layout, commonly used UI view components are all available
* Extensible Model, View, and Controller architecture encapsulation to quickly write business code
* Compatible with SwiftUI, easily implement UIKit and SwiftUI hybrid interface development
* Any replaceable fw. code prefix, commonly used Toolkit methods, Theme, multi-language processing
* Everything you want is available here

All Swizzles in this framework will not take effect by default and will not affect existing projects. They need to be manually opened or invoked to take effect. This library has been used in formal projects, and will continue to be maintained and expanded in the future. Everyone is welcome to use and provide valuable comments to grow together.

Installation

It is recommended to use CocoaPods or Swift Package Manager to install and automatically manage dependencies. For manual import, please refer to Example project configuration.

CocoaPods

This framework supports CocoaPods, Podfile example:

platform :ios, '13.0'
use_frameworks!

target 'Example' do
  # Import the default subspecs
  pod 'FWFramework'
  
  # Import the macro subspecs
  # pod 'FWFramework', :subspecs => ['FWFramework', 'FWMacro/Macros']   
  # Import the specified subspecs, see the podspec file for the list of subspecs
  # pod 'FWFramework', :subspecs => ['FWFramework', 'FWSwiftUI']
end

Swift Package Manager

This framework supports Swift Package Manager, just add and check the required modules, Package example:

https://github.com/lszzy/FWFramework.git

# Check and import the default submodule
import FWFramework

# Check and import the macro submodule
import FWMacro   
# Check and import the specified sub-modules, see the Package.swift file for the list of sub-modules
import FWSwiftUI

Api

The document is located in the docs folder, just open index.html in the browser, or run docs.sh to automatically generate the Api document.

Changelog

As this framework is constantly upgrading, optimizing and expanding new functions, the Api of each version may be slightly changed. If a compilation error is reported when the new version is upgraded, the solution is as follows:

1. Just change to specify the pod version number to import, the recommended way, does not affect the project progress, upgrade to the new version only when you have time, example: pod 'FWFramework', '5.3.1'
2. Upgrade to the new version, please pay attention to the version update log

Swift

From version 5.0, only compatible with Swift, compatible with iOS 13+. The 5.x version is completely refactored using Swift and is incompatible with some APIs of the 4.x version. When migrating, old users not only use the new API to fix compilation errors, but also need to test whether the relevant functions are normal. We apologize for the inconvenience caused to you.

Objective-C

For OC compatibility, please use version 4.x, compatible with iOS 11+. Subsequent versions of version 4.x will only fix bugs and no new features will be added.

Vendor

This framework uses a lot of third-party libraries. Thanks to the authors of all third-party libraries. I will not list them all here. For details, please refer to the relevant links of the source file.

In the introduction of third-party libraries, in order to be compatible with existing project pod dependencies, as well as to customize changes and bug fixes of third-party libraries, and to facilitate subsequent maintenance, this framework uniformly modified the class prefix and method prefix. If there is any inconvenience during use, Please understand.
If you are the author of a third-party open source library, if this library violates your rights, please let me know, and I will immediately remove the use of the third-party open source library. 

Support

wuyong.site

GitHub

link
Stars: 9
Last commit: Yesterday
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

[5.3.1] - 2024-04-23
Yesterday

Changed

  • HTTPRequest method handle parameter supports Self, no type conversion is required
  • HTTPRequest opens the contextAccessory attribute and can be customized
  • When a BatchRequest request fails and stops, only other requests are canceled. Add the addRequest method.

Changed

  • HTTPRequest方法句柄参数支持Self,无需类型转换
  • HTTPRequest开放contextAccessory属性,可自定义
  • BatchRequest某个请求失败导致停止时只取消其他请求,新增addRequest方法

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics