{"id":15036450,"url":"https://github.com/emreozdil/swift-daily-tips","last_synced_at":"2025-05-16T09:03:14.043Z","repository":{"id":217218243,"uuid":"156199389","full_name":"emreozdil/Swift-Daily-Tips","owner":"emreozdil","description":":octocat: Daily Tips from Swift World","archived":false,"fork":false,"pushed_at":"2021-02-03T13:45:44.000Z","size":24986,"stargazers_count":1373,"open_issues_count":5,"forks_count":78,"subscribers_count":125,"default_branch":"master","last_synced_at":"2025-05-16T09:03:05.190Z","etag":null,"topics":["daily","daily-tips","ios","swift","tips","tips-and-tricks"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/emreozdil.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"github":"emreozdil"}},"created_at":"2018-11-05T10:25:50.000Z","updated_at":"2025-03-06T16:13:01.000Z","dependencies_parsed_at":"2024-01-15T04:30:56.156Z","dependency_job_id":null,"html_url":"https://github.com/emreozdil/Swift-Daily-Tips","commit_stats":null,"previous_names":["emreozdil/swift-daily-tips"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emreozdil%2FSwift-Daily-Tips","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emreozdil%2FSwift-Daily-Tips/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emreozdil%2FSwift-Daily-Tips/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emreozdil%2FSwift-Daily-Tips/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emreozdil","download_url":"https://codeload.github.com/emreozdil/Swift-Daily-Tips/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254501555,"owners_count":22081528,"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":["daily","daily-tips","ios","swift","tips","tips-and-tricks"],"created_at":"2024-09-24T20:31:12.451Z","updated_at":"2025-05-16T09:03:09.026Z","avatar_url":"https://github.com/emreozdil.png","language":"Swift","funding_links":["https://github.com/sponsors/emreozdil"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg height=\"160\" src=\"/icons/sdt-logo.png\" /\u003e\n\u003c/p\u003e\n\n[![GitHub stars](https://img.shields.io/github/stars/emreozdil/Swift-Daily-Tips.svg)](https://github.com/emreozdil/Swift-Daily-Tips/stargazers) [![GitHub forks](https://img.shields.io/github/forks/emreozdil/Swift-Daily-Tips.svg)](https://github.com/emreozdil/Swift-Daily-Tips/stargazers) [![GitHub issues](https://img.shields.io/github/issues/emreozdil/Swift-Daily-Tips.svg)](https://github.com/emreozdil/Swift-Daily-Tips/issues) [![GitHub license](https://img.shields.io/github/license/emreozdil/Swift-Daily-Tips.svg)](https://github.com/emreozdil/Swift-Daily-Tips)\n\n[![alt text][TwitterIcon]][Twitter]\n[![alt text][TelegramIcon]][Telegram]\n\n[TwitterIcon]: /icons/twitter.png (twitter)\n[TelegramIcon]: /icons/telegram.png (telegram)\n\n[Twitter]: https://www.twitter.com/SwiftDailyTips\n[Telegram]: https://t.me/SwiftDailyTips\n\n## [Timeline](/TIMELINE.md) of Tips\n\n#### [#100 Switch Root VC Extension](/codes/SwitchRootVCExtension.swift)\n\n#### [#99 C Style For Loop Using Stride](/codes/CStyleForLoopUsingStride.swift)\n\n#### [#98 Importance of Weak Reference](/codes/ImportanceOfWeakReference.swift)\n\n#### [#97 Custom Operator](/codes/CustomOperator.swift)\n\n#### [#96 Operator Overloading](/codes/OperatorOverloading.swift)\n\n#### [#95 Array Prepend Extension Function](/codes/ArrayPrependExtensionFunction.swift)\n\n#### [#94 SnapKit Usage](/codes/SnapKitUsage.swift)\n\n#### [#93 Distance of two CGPoint](/codes/DistanceOfTwoCGPoint.swift)\n\n#### [#92 Int and String Description of Bool](/codes/IntAndStringDescriptionOfBool.swift)\n\n#### [#91 Sum Function for Numeric Collection](/codes/SumFunction.swift)\n\n#### [#90 Labeled Statements](/codes/LabeledStatements.swift)\n\n#### [#89 Required Height for Label](/codes/RequiredHeightForLabel.swift)\n\n#### [#88 Auto Layout Extension](/codes/AutoLayoutExtension.swift)\n\n#### [#87 Int to UInt, Double, Float](/codes/IntToUIntDoubleFloat.swift)\n\n#### [#86 URL Query Parameters](/codes/UrlQueryParameters.swift)\n\n#### [#85 Adding a prefix to a string](/codes/AddingPrefixToString.swift)\n\n#### [#84 Decoding JSON from Bundle](/codes/DecodingJSONFromBundle.swift)\n\n#### [#83 Word Count Function](/codes/WordCountFunction.swift)\n\n#### [#82 Show Alert Extension](/codes/ShowAlertFunction.swift)\n\n#### [#81 Get an Element in Safety](/codes/GetAnElementInSafety.swift)\n\n#### [#80 Bundle Extension](/codes/BundleExtension.swift)\n\n#### [#79 Search Bar Text Field](/codes/SearchBarTextField.swift)\n\n#### [#78 distinct(by: ) function](/codes/DistinctBy.swift)\n\n#### [#77 Remove the same value from the array](/codes/RemoveTheSameValueFromTheArray.swift)\n\n#### [#76 Remove element by the instances in an array](/codes/RemoveElementInArray.swift)\n\n#### [#75 Register - Dequeue XIB UICollectionView](/codes/RegisterDequeueXIBCollectionView.swift)\n\n#### [#74 Register - Dequeue XIB UITableViewCell](/codes/RegisterDequeueXIBTableView.swift)\n\n#### [#73 Class Name Extension](/codes/ClassNameExtension.swift)\n\n#### [#72 Handling Future Enum Cases Swift 5.0](/codes/HandlingFutureEnumCasesSwift5.swift)\n\n#### [#71 Conform Never to Equatable and Hashable Swift 5.0](/codes/ConformNeverToEquatableAndHashableSwift5.swift)\n\n#### [#70 Support 'less than' operator in compilation conditions Swift 5.0](/codes/LessThanOperatorSwift5.swift)\n\n#### [#69 Character Properties Swift 5.0](/codes/CharacterPropertiesSwift5.swift)\n\n#### [#68 Flatten nested optionals resulting from 'try?' Swift 5.0](/codes/FlattenNestedOptionalsSwift5.swift)\n\n#### [#67 compactMapValues Swift 5.0](/codes/CompactMapValuesSwift5.swift)\n\n#### [#66 count(where:) Swift 5.0](/codes/CountWhereSwift5.swift)\n\n#### [#65 isMultiple(of:) Swift 5.0](/codes/IsMultipleSwift5.swift)\n\n#### [#64 Extension for Nested Types](/codes/ExtensionForNestedTypes.swift)\n\n#### [#63 Code Separation](/codes/CodeSeparation.swift)\n\n#### [#62 Preserving Initializers](/codes/PreservingInitializers.swift)\n\n#### [#61 Protocol Conformance](/codes/ProtocolConformance.swift)\n\n#### [#60 Sketch Shadow](/codes/SketchShadow.swift)\n\n#### [#59 Facade Pattern](/codes/FacadePattern.swift)\n\n#### [#58 Observer Pattern](/codes/ObserverPattern.swift)\n\n#### [#57 Strategy Pattern](/codes/StrategyPattern.swift)\n\n#### [#56 Factory Pattern](/codes/FactoryPattern.swift)\n\n#### [#55 Adapter Pattern](/codes/AdapterPattern.swift)\n\n#### [#54 Singleton Pattern](/codes/SingletonPattern.swift)\n\n#### [#53 Dispatch Group](/codes/DispatchGroup.swift)\n\n#### [#52 Background QoS](/codes/BackgroundQoS.swift)\n\n#### [#51 Utility QoS](/codes/UtilityQoS.swift)\n\n#### [#50 Default QoS](/codes/DefaultQoS.swift)\n\n#### [#49 User Initiated QoS](/codes/UserInitiatedQoS.swift)\n\n#### [#48 User Interactive QoS](/codes/UserInteractiveQoS.swift)\n\n#### [#47 Quality of Service Classes](/codes/QualityOfServiceClasses.swift)\n\n#### [#46 MutatingFunction](/codes/MutatingFunction.swift)\n\n#### [#45 Dynamic Member Lookup](/codes/DynamicMemberLookup.swift)\n\n#### [#44 Bitwise Shift Operators](/codes/BitwiseShiftOperators.swift)\n\n#### [#43 Unary Minus Operator](/codes/UnaryMinusOperator.swift)\n\n#### [#42 One-Sided Range](/codes/OneSidedRange.swift)\n\n#### [#41 Half-Open Range Operator](/codes/HalfOpenRangeOperator.swift)\n\n#### [#40 Closed Range Operator](/codes/ClosedRangeOperator.swift)\n\n#### [#39 Variadic Parameters](/codes/VariadicParameters.swift)\n\n#### [#38 Omitting Argument Labels](/codes/OmittingArgumentLabels.swift)\n\n#### [#37 Function Argument Labels](/codes/FunctionArgumentLabels.swift)\n\n#### [#36 Repeat While](/codes/RepeatWhile.swift)\n\n#### [#35 Multiline String Literals](/codes/MultilineStringLiterals.swift)\n\n#### [#34 Builder Pattern](/codes/BuilderPattern.swift)\n\n#### [#33 Swap Values](/codes/SwapValues.swift)\n\n#### [#32 Generic Functions](/codes/GenericFunctions.swift)\n\n#### [#31 Fallthrough](/codes/Fallthrough.swift)\n\n#### [#30 Join \u0026 Split Function](/codes/Join\u0026SplitFunction.swift)\n\n#### [#29 Nil-Coalescing Operator](/codes/NilCoalescingOperator.swift)\n\n#### [#28 Ternary Operator](/codes/TernaryOperator.swift)\n\n#### [#27 Public Private(set)](/codes/PublicPrivateSet.swift)\n\n#### [#26 Property Observers](/codes/PropertyObservers.swift)\n\n#### [#25 Return Multiple Values](/codes/ReturnMultipleValues.swift)\n\n#### [#24 Discardable Result](/codes/DiscardableResult.swift)\n\n#### [#23 Lazy Property](/codes/LazyProperty.swift)\n\n#### [#22 Default Parameter](/codes/DefaultParameter.swift)\n\n#### [#21 Type Methods](/codes/TypeMethods.swift)\n\n#### [#20 Static Type Properties](/codes/StaticTypeProperties.swift)\n\n#### [#19 Computed Properties](/codes/ComputedProperties.swift)\n\n#### [#18 Shuffled and Shuffle functions](/codes/ShuffledAndShuffleFunctions.swift)\n\n#### [#17 CaseIterable Protocol](/codes/CaseIterable.swift)\n\n#### [#16 Element of Operator ∈](/codes/ElementOfOperator.swift)\n\n#### [#15 Passing Operator](/codes/PassingOperator.swift)\n\n#### [#14 CompactMap Function](/codes/CompactMapFunction.swift)\n\n#### [#13 Map Function](/codes/MapFunction.swift)\n\n#### [#12 In-out Parameter](/codes/InoutParameter.swift)\n\n#### [#11 Simple Defer Function](/codes/SimpleDefer.swift)\n\n#### [#10 AllSatisfy Function](/codes/AllSatisfyFunction.swift)\n\n#### [#9 First Where Function](/codes/FirstWhere.swift)\n\n#### [#8 Guard Optional Binding](/codes/GuardOptionalBinding.swift)\n\n#### [#7 Filter Function](/codes/FilterFunction.swift)\n\n#### [#6 One Time Code #iOS12](/codes/OneTimeCode.swift)\n\n#### [#5 Dismiss Keyboard Interactively](/codes/DismissKeyboardInteractively.swift)\n\n#### [#4 Member Short Hand](/codes/MemberShortHand.swift)\n\n#### [#3 UIColor Convenience Init](/codes/UIColorConvenienceInit.swift)\n\n#### [#2 Static Factory Methods for UILabel](/codes/StaticFactoryMethodsForUILabel.swift)\n\n#### [#1 Add Subview Extension](/codes/AddSubviewExtension.swift)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femreozdil%2Fswift-daily-tips","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femreozdil%2Fswift-daily-tips","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femreozdil%2Fswift-daily-tips/lists"}