diff --git a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift
deleted file mode 100644
index 0189ed3..0000000
--- a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift
+++ /dev/null
@@ -1,16 +0,0 @@
-//
-// String+Extensions.swift
-// FinanceApp
-//
-// Created by Rodrigo Borges on 24/02/22.
-//
-
-import Foundation
-
-extension String {
-
- static func activityDetails(with price: Float, and time: String) -> String {
-
- return "$\(price) • \(time)"
- }
-}
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml
new file mode 100644
index 0000000..73a07e6
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml
@@ -0,0 +1,132 @@
+# ------------------------------------------------------------------------------
+# INCLUDE, EXCLUDE & IGNORED PATHS
+# ------------------------------------------------------------------------------
+
+# paths to ignore during linting.
+excluded:
+ - Pods
+ - SampleApp
+ - SampleAppTests
+
+# ------------------------------------------------------------------------------
+# EXCLUDE & IGNORED RULES
+# ------------------------------------------------------------------------------
+
+# rule identifiers to exclude from running
+disabled_rules:
+ - trailing_whitespace
+ - large_tuple
+ - missing_docs
+ - cyclomatic_complexity
+ - for_where
+ - class_delegate_protocol
+ - private_over_fileprivate
+opt_in_rules: # some rules are only opt-in
+ - overridden_super_call
+ - closure_spacing
+ - closure_end_indentation
+ - redundant_nil_coalescing
+ - operator_usage_whitespace
+ - explicit_init
+ - vertical_parameter_alignment_on_call
+ - conditional_returns_on_newline
+ # Find all the available rules by running:
+ # swiftlint rules
+
+# ------------------------------------------------------------------------------
+# LENGHT RULES
+# ------------------------------------------------------------------------------
+
+# file
+file_length:
+ warning: 1500 # lenght considered warning
+ error: 1700
+# type body
+type_body_length:
+ - 400 # lenght considered warning
+
+# code line
+line_length: 500
+
+#function_parameter_count
+function_parameter_count:
+ warning: 15
+ error: 20
+
+# ------------------------------------------------------------------------------
+# NAMING RULES
+# ------------------------------------------------------------------------------
+
+identifier_name:
+ severity: warning
+ min_length: 1 # only warning
+ max_length: 80 # warning
+ excluded: # excluded via string array
+ - id
+ - URL
+ - url
+ - map
+ - key
+ - rhs
+ - lhs
+ - Strings
+ allowed_symbols: ["_"] # these are allowed in type names
+
+type_name:
+ min_length: 3 # only warning
+ max_length: # warning and error
+ warning: 40
+ error: 200
+ excluded: iPhone # excluded via string
+ allowed_symbols: ["_"] # these are allowed in type names
+
+shorthand_operator: warning
+type_name: warning
+force_cast: warning
+
+# ------------------------------------------------------------------------------
+# CUSTOM RULES
+# ------------------------------------------------------------------------------
+
+custom_rules:
+
+ # Style Guide
+ sg_nil_verification:
+ name: "SG nil verification"
+ regex: "(!=[ ]*nil[ ]*[{][ ]*[}]|==[ ]*nil[ ]*[{][ ]*[}])"
+ message: "Avoid use != nil {} or == nil {}. Example: instead of using 'param != nil {} else', use 'param == nil'"
+ severity: warning
+
+ # Style Guide
+ is_not_empty_rule:
+ name: "Not empty verification SG"
+ regex: "([.]count|[.]length[(][)] )[ ]*>[ ]*0"
+ message: "Use IsNotEmpty instead of count > 0"
+ severity: warning
+
+ # Style Guide
+ isEmpty_rule:
+ name: "Empty verification SG"
+ regex: "([.]count|[.]length[(][)] )[ ]*==[ ]*0"
+ message: "Use isEmpty instead of count == 0"
+ severity: warning
+
+ # Use to avoid unnecessary inheritance
+ viewModel_unnecessary_inheritance:
+ name: "Presenter Inheritance "
+ regex: "Presenter[ ]*:[ ]*NSObject"
+ message: "Presenter unnecessary inheritance"
+ severity: warning
+
+ # Use localized before to upperCase or lowerCase a String
+ localized_rule:
+ name: "Localized rule"
+ regex: "cased[(][])].localized"
+ message: "Use localized before to upperCase or lowerCase a String"
+ severity: warning
+
+# ------------------------------------------------------------------------------
+# REPORTER TYPE (xcode, json, csv, checkstyle, junit, html, emoji)
+# ------------------------------------------------------------------------------
+
+reporter: "xcode"
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec
new file mode 100644
index 0000000..7e2b348
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec
@@ -0,0 +1,31 @@
+Pod::Spec.new do |spec|
+
+ spec.name = 'FinanceFoundations'
+ spec.version = '0.1.0'
+ spec.summary = 'Foundations Framework.'
+ spec.homepage = 'https://framework.com'
+ spec.author = { 'Munizin' => "pmdm.sys@gmail.com" }
+ spec.license = { :type => 'Private' }
+ spec.source = { :git => 'https://framework-source-code.git',
+ :tag => spec.version.to_s }
+
+ spec.ios.deployment_target = '13.0'
+ spec.requires_arc = true
+
+ spec.cocoapods_version = '>= 1.5'
+ spec.swift_version = '5.4'
+
+ spec.source_files = 'FinanceFoundations/**/*.{h,m,swift}'
+
+ spec.resource_bundles = {
+ 'FinanceFoundations' => [
+ 'FinanceFoundations/**/*.xcassets',
+ 'FinanceFoundations/**/*.xib'
+ ]
+ }
+
+ spec.resources = [
+ 'FinanceFoundations/**/*.strings'
+ ]
+
+end
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift
new file mode 100644
index 0000000..48080c7
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift
@@ -0,0 +1,15 @@
+//
+// String+Extensions.swift
+// FinanceFoundations
+//
+// Created by Philippe Muniz Gomes on 03/03/23.
+//
+
+import Foundation
+
+extension String {
+
+ public static func activityDetails(with price: Float, and time: String) -> String {
+ return "$\(price) • \(time)"
+ }
+}
diff --git a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift
similarity index 81%
rename from solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift
rename to solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift
index b49d351..e7a265e 100644
--- a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift
@@ -1,8 +1,8 @@
//
// UITableViewCell+Extensions.swift
-// FinanceApp
+// FinanceFoundations
//
-// Created by Rodrigo Borges on 24/02/22.
+// Created by Philippe Muniz Gomes on 03/03/23.
//
import Foundation
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Generated/Strings.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Generated/Strings.swift
new file mode 100644
index 0000000..e69de29
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist
new file mode 100644
index 0000000..2bbb57f
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ $(PRODUCT_BUNDLE_PACKAGE_TYPE)
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ $(CURRENT_PROJECT_VERSION)
+
+
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings
new file mode 100644
index 0000000..583c2ec
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings
@@ -0,0 +1,3 @@
+// MARK: - Feature
+
+"Feature.Example.HelloWorld" = "Hello World from SDK!!";
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift
new file mode 100644
index 0000000..a83090e
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift
@@ -0,0 +1,15 @@
+//
+// FinanceFoundationsInitializerTests.swift
+// FinanceFoundationsTests
+//
+
+import XCTest
+@testable import FinanceFoundations
+
+final class FinanceFoundationsInitializerTests: XCTestCase {
+
+ func testHellorWorld() {
+ XCTAssertEqual(FinanceFoundationsInitializer.helloWorld(), "Hello World from SDK!!")
+ }
+
+}
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist
new file mode 100644
index 0000000..00f941d
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ $(PRODUCT_BUNDLE_PACKAGE_TYPE)
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+
+
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile
new file mode 100644
index 0000000..dbc0b8e
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile
@@ -0,0 +1,5 @@
+source "https://rubygems.org"
+
+gem "xcpretty"
+gem "cocoapods", '1.10.2'
+gem "xcode-install"
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile
new file mode 100644
index 0000000..c742d9c
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile
@@ -0,0 +1,24 @@
+
+source 'https://cdn.cocoapods.org/'
+
+platform :ios, '13.0'
+
+inhibit_all_warnings!
+use_frameworks!
+
+workspace 'FinanceFoundations'
+
+target 'FinanceFoundations' do
+
+ pod 'SwiftLint'
+ pod 'SwiftGen', '6.5.1'
+
+ target 'FinanceFoundationsTests' do
+ # pod 'Dependency', '~> 1.0.0'
+ end
+end
+
+target 'SampleApp' do
+ project 'SampleApp/SampleApp'
+ pod 'FinanceFoundations', :path => './'
+end
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift
new file mode 100644
index 0000000..3579659
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift
@@ -0,0 +1,24 @@
+//
+// AppDelegate.swift
+// SampleApp
+//
+
+import UIKit
+
+@UIApplicationMain
+class AppDelegate: UIResponder, UIApplicationDelegate {
+
+ var window: UIWindow?
+
+ func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
+
+ let window = UIWindow(frame: UIScreen.main.bounds)
+ window.backgroundColor = .white
+ window.makeKeyAndVisible()
+ window.rootViewController = UINavigationController(rootViewController: ViewController())
+ self.window = window
+
+ return true
+ }
+
+}
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json
new file mode 100644
index 0000000..d8db8d6
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -0,0 +1,98 @@
+{
+ "images" : [
+ {
+ "idiom" : "iphone",
+ "size" : "20x20",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "20x20",
+ "scale" : "3x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "29x29",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "29x29",
+ "scale" : "3x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "40x40",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "40x40",
+ "scale" : "3x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "60x60",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "iphone",
+ "size" : "60x60",
+ "scale" : "3x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "20x20",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "20x20",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "29x29",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "29x29",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "40x40",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "40x40",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "76x76",
+ "scale" : "1x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "76x76",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ipad",
+ "size" : "83.5x83.5",
+ "scale" : "2x"
+ },
+ {
+ "idiom" : "ios-marketing",
+ "size" : "1024x1024",
+ "scale" : "1x"
+ }
+ ],
+ "info" : {
+ "version" : 1,
+ "author" : "xcode"
+ }
+}
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json
new file mode 100644
index 0000000..da4a164
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "version" : 1,
+ "author" : "xcode"
+ }
+}
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard
new file mode 100644
index 0000000..dc004f9
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard
new file mode 100644
index 0000000..7ab00a0
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist
new file mode 100644
index 0000000..fbef167
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist
@@ -0,0 +1,43 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+ LSRequiresIPhoneOS
+
+ UILaunchStoryboardName
+ LaunchScreen
+ UIMainStoryboardFile
+ Main
+ UIRequiredDeviceCapabilities
+
+ armv7
+
+ UISupportedInterfaceOrientations
+
+ UIInterfaceOrientationPortrait
+
+ UISupportedInterfaceOrientations~ipad
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationPortraitUpsideDown
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+
+
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift
new file mode 100644
index 0000000..8a2c5e8
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift
@@ -0,0 +1,21 @@
+//
+// ViewController.swift
+// SampleApp
+//
+
+import UIKit
+import FinanceFoundations
+
+final class ViewController: UIViewController {
+
+ override func viewDidAppear(_ animated: Bool) {
+ super.viewDidAppear(animated)
+
+ title = "Sample App"
+
+ let alert = UIAlertController(title: "FinanceFoundations", message: FinanceFoundationsInitializer.helloWorld(), preferredStyle: .alert)
+ alert.addAction(.init(title: "OK", style: .default, handler: nil))
+ present(alert, animated: true, completion: nil)
+ }
+
+}
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml
new file mode 100644
index 0000000..65d71b7
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml
@@ -0,0 +1,84 @@
+#==================================================================================================
+# Xcodegen documentation
+# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme
+#==================================================================================================
+
+#==================================================================================================
+name: SampleApp
+#==================================================================================================
+
+settings:
+ MARKETING_VERSION: "1.0.0"
+ SWIFT_VERSION: 5.4
+ VERSIONING_SYSTEM: "apple-generic"
+ CODE_SIGN_IDENTITY: "iPhone Developer"
+ CLANG_ENABLE_OBJC_WEAK: "YES"
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES"
+ ARCHS: $(ARCHS_STANDARD)
+
+options:
+ xcodeVersion: "13.0"
+ createIntermediateGroups: true
+ deploymentTarget:
+ iOS: "13.0"
+
+configs:
+ Release: release
+ Adhoc: release
+ Debug: debug
+
+#==================================================================================================
+targets:
+#==================================================================================================
+
+ SampleApp:
+
+ platform: iOS
+ type: application
+
+ sources:
+ - path: SampleApp
+
+ settings:
+ groups:
+ - commonSettings
+
+ base:
+ INFOPLIST_FILE: SampleApp/Info.plist
+
+#==================================================================================================
+schemes:
+#==================================================================================================
+
+#____________________________________________________________
+# Debug
+
+ Sample:
+ build:
+ targets:
+ SampleApp: [run, archive]
+ parallelizeBuild: true
+ buildImplicitDependencies: true
+ run:
+ config: Debug
+ archive:
+ config: Release
+
+#==================================================================================================
+settingGroups:
+#==================================================================================================
+
+# Common build settings
+
+ commonSettings:
+ base:
+ PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendgenerator.sample-app
+ CODE_SIGN_STYLE: "Manual"
+ DEVELOPMENT_TEAM: ""
+ ENABLE_BITCODE: "NO"
+ TARGETED_DEVICE_FAMILY: "1"
+ ARCHS: "$(ARCHS_STANDARD)"
+ LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks"
+ OTHER_SWIFT_FLAGS: "$(inherited) -D COCOAPODS"
+
+#==================================================================================================
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml
new file mode 100644
index 0000000..a5c75b1
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml
@@ -0,0 +1,103 @@
+#==================================================================================================
+# Xcodegen documentation
+# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme
+#==================================================================================================
+
+#==================================================================================================
+name: FinanceFoundations
+#==================================================================================================
+
+settings:
+ MARKETING_VERSION: "0.1.0"
+ SWIFT_VERSION: 5.4
+ VERSIONING_SYSTEM: "apple-generic"
+ CODE_SIGN_IDENTITY: "iPhone Developer"
+ CLANG_ENABLE_OBJC_WEAK: "YES"
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES"
+ ARCHS: $(ARCHS_STANDARD)
+
+options:
+ xcodeVersion: "13.0"
+ createIntermediateGroups: true
+ developmentLanguage: "pt-BR"
+ deploymentTarget:
+ iOS: "13.0"
+
+configs:
+ Debug: debug
+ Release: release
+
+#==================================================================================================
+targets:
+#==================================================================================================
+
+#____________________________________________________________
+# Framework
+
+ FinanceFoundations:
+
+ platform: iOS
+ type: framework
+
+ sources:
+ - path: FinanceFoundations
+
+ preBuildScripts:
+ - script: "${PODS_ROOT}/SwiftGen/bin/swiftgen"
+ name: SwiftGen
+
+ postBuildScripts:
+ - script: "${PODS_ROOT}/SwiftLint/swiftlint"
+ name: SwiftLint
+
+ settings:
+ CODE_SIGN_STYLE: "Manual"
+ DEVELOPMENT_TEAM: ""
+ PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendGenerator.FinanceFoundations
+ INFOPLIST_FILE: FinanceFoundations/Info.plist
+
+ ENABLE_BITCODE: "NO"
+ TARGETED_DEVICE_FAMILY: "1"
+ LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks"
+ ARCHS: $(ARCHS_STANDARD)
+
+#____________________________________________________________
+# Tests
+
+ FinanceFoundationsTests:
+
+ platform: iOS
+ type: bundle.unit-test
+
+ sources:
+ - path: FinanceFoundationsTests
+ excludes:
+ - "__Snapshots__"
+ - "**/__Snapshots__"
+
+ dependencies:
+ - target: FinanceFoundations
+
+#==================================================================================================
+schemes:
+#==================================================================================================
+
+ FinanceFoundationsSDK:
+ build:
+ targets:
+ FinanceFoundations: [run, test]
+ parallelizeBuild: true
+ buildImplicitDependencies: true
+ archive:
+ config: Release
+ run:
+ config: Debug
+ test:
+ config: Debug
+ gatherCoverageData: true
+ coverageTargets:
+ - FinanceFoundations
+ targets:
+ - FinanceFoundationsTests
+
+#==================================================================================================
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml
new file mode 100644
index 0000000..e88ed56
--- /dev/null
+++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml
@@ -0,0 +1,14 @@
+strings:
+ inputs: FinanceFoundations/Resources/Localizable.strings
+ outputs:
+ - templateName: structured-swift5
+ params:
+ enumName: Localization
+ output: FinanceFoundations/Generated/Strings.swift
+
+# xcassets:
+# inputs:
+# - FinanceFoundations/Resources/Assets.xcassets
+# outputs:
+# - templateName: swift5
+# output: FinanceFoundations/Generated/Images.swift
\ No newline at end of file
diff --git a/solutions/devsprint-julio-fernandes-10/Podfile b/solutions/devsprint-julio-fernandes-10/Podfile
index 5da1c90..ab6bbcd 100644
--- a/solutions/devsprint-julio-fernandes-10/Podfile
+++ b/solutions/devsprint-julio-fernandes-10/Podfile
@@ -10,6 +10,7 @@ target 'FinanceApp' do
pod 'ActivityDetails', :path => 'Libraries/ActivityDetails'
pod 'Confirmation', :path => 'Libraries/Confirmation'
pod 'Components', :path => 'Libraries/Components'
+ pod 'FinanceFoundations', :path => 'Libraries/FinanceFoundations'
target 'FinanceAppTests' do
# Pods for testing