Skip to content

Commit 302caf6

Browse files
committed
SwiftWebUI
Signed-off-by: Mike Packard <[email protected]>
0 parents  commit 302caf6

File tree

19 files changed

+971
-0
lines changed

19 files changed

+971
-0
lines changed

.gitignore

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
.DS_Store
2+
/.build
3+
/Packages
4+
/*.xcodeproj
5+
xcuserdata/
6+
DerivedData/
7+
.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata

README.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# SwiftWebUI
2+
3+
Tutorial SwiftUI for Web:
4+
5+
Tokamak
6+
https://github.com/TokamakUI/Tokamak
7+
8+
SwiftWebUI
9+
https://github.com/SwiftWebUI/SwiftWebUI

SwiftWebUIApp/README.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# SwiftWebUIApp
2+
3+
http://localhost:1337/
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,366 @@
1+
// !$*UTF8*$!
2+
{
3+
archiveVersion = 1;
4+
classes = {
5+
};
6+
objectVersion = 55;
7+
objects = {
8+
9+
/* Begin PBXBuildFile section */
10+
87816B4627B09CBD00FC958F /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B4527B09CBD00FC958F /* main.swift */; };
11+
87816B4E27B09CF300FC958F /* SwiftWebUI in Frameworks */ = {isa = PBXBuildFile; productRef = 87816B4D27B09CF300FC958F /* SwiftWebUI */; };
12+
87816B5127B09F6000FC958F /* RootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5027B09F6000FC958F /* RootView.swift */; };
13+
87816B5327B09FBA00FC958F /* LoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5227B09FBA00FC958F /* LoginView.swift */; };
14+
87816B5527B09FC100FC958F /* RegisterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5427B09FC100FC958F /* RegisterView.swift */; };
15+
87816B5727B09FCF00FC958F /* MainView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5627B09FCF00FC958F /* MainView.swift */; };
16+
87816B5A27B0A1EC00FC958F /* TodoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5927B0A1EC00FC958F /* TodoModel.swift */; };
17+
87816B5D27B0A65900FC958F /* String+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87816B5C27B0A65900FC958F /* String+.swift */; };
18+
/* End PBXBuildFile section */
19+
20+
/* Begin PBXCopyFilesBuildPhase section */
21+
87816B4027B09CBD00FC958F /* CopyFiles */ = {
22+
isa = PBXCopyFilesBuildPhase;
23+
buildActionMask = 2147483647;
24+
dstPath = /usr/share/man/man1/;
25+
dstSubfolderSpec = 0;
26+
files = (
27+
);
28+
runOnlyForDeploymentPostprocessing = 1;
29+
};
30+
/* End PBXCopyFilesBuildPhase section */
31+
32+
/* Begin PBXFileReference section */
33+
87816B4227B09CBD00FC958F /* SwiftWebUIApp */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = SwiftWebUIApp; sourceTree = BUILT_PRODUCTS_DIR; };
34+
87816B4527B09CBD00FC958F /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = "<group>"; };
35+
87816B5027B09F6000FC958F /* RootView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RootView.swift; sourceTree = "<group>"; };
36+
87816B5227B09FBA00FC958F /* LoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginView.swift; sourceTree = "<group>"; };
37+
87816B5427B09FC100FC958F /* RegisterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegisterView.swift; sourceTree = "<group>"; };
38+
87816B5627B09FCF00FC958F /* MainView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainView.swift; sourceTree = "<group>"; };
39+
87816B5927B0A1EC00FC958F /* TodoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TodoModel.swift; sourceTree = "<group>"; };
40+
87816B5C27B0A65900FC958F /* String+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+.swift"; sourceTree = "<group>"; };
41+
/* End PBXFileReference section */
42+
43+
/* Begin PBXFrameworksBuildPhase section */
44+
87816B3F27B09CBD00FC958F /* Frameworks */ = {
45+
isa = PBXFrameworksBuildPhase;
46+
buildActionMask = 2147483647;
47+
files = (
48+
87816B4E27B09CF300FC958F /* SwiftWebUI in Frameworks */,
49+
);
50+
runOnlyForDeploymentPostprocessing = 0;
51+
};
52+
/* End PBXFrameworksBuildPhase section */
53+
54+
/* Begin PBXGroup section */
55+
87816B3927B09CBD00FC958F = {
56+
isa = PBXGroup;
57+
children = (
58+
87816B4427B09CBD00FC958F /* SwiftWebUIApp */,
59+
87816B4327B09CBD00FC958F /* Products */,
60+
);
61+
sourceTree = "<group>";
62+
};
63+
87816B4327B09CBD00FC958F /* Products */ = {
64+
isa = PBXGroup;
65+
children = (
66+
87816B4227B09CBD00FC958F /* SwiftWebUIApp */,
67+
);
68+
name = Products;
69+
sourceTree = "<group>";
70+
};
71+
87816B4427B09CBD00FC958F /* SwiftWebUIApp */ = {
72+
isa = PBXGroup;
73+
children = (
74+
87816B5B27B0A64D00FC958F /* Extensions */,
75+
87816B5827B0A1DF00FC958F /* Models */,
76+
87816B4F27B09F4200FC958F /* AppScreens */,
77+
87816B4527B09CBD00FC958F /* main.swift */,
78+
);
79+
path = SwiftWebUIApp;
80+
sourceTree = "<group>";
81+
};
82+
87816B4F27B09F4200FC958F /* AppScreens */ = {
83+
isa = PBXGroup;
84+
children = (
85+
87816B5027B09F6000FC958F /* RootView.swift */,
86+
87816B5227B09FBA00FC958F /* LoginView.swift */,
87+
87816B5427B09FC100FC958F /* RegisterView.swift */,
88+
87816B5627B09FCF00FC958F /* MainView.swift */,
89+
);
90+
path = AppScreens;
91+
sourceTree = "<group>";
92+
};
93+
87816B5827B0A1DF00FC958F /* Models */ = {
94+
isa = PBXGroup;
95+
children = (
96+
87816B5927B0A1EC00FC958F /* TodoModel.swift */,
97+
);
98+
path = Models;
99+
sourceTree = "<group>";
100+
};
101+
87816B5B27B0A64D00FC958F /* Extensions */ = {
102+
isa = PBXGroup;
103+
children = (
104+
87816B5C27B0A65900FC958F /* String+.swift */,
105+
);
106+
path = Extensions;
107+
sourceTree = "<group>";
108+
};
109+
/* End PBXGroup section */
110+
111+
/* Begin PBXNativeTarget section */
112+
87816B4127B09CBD00FC958F /* SwiftWebUIApp */ = {
113+
isa = PBXNativeTarget;
114+
buildConfigurationList = 87816B4927B09CBD00FC958F /* Build configuration list for PBXNativeTarget "SwiftWebUIApp" */;
115+
buildPhases = (
116+
87816B3E27B09CBD00FC958F /* Sources */,
117+
87816B3F27B09CBD00FC958F /* Frameworks */,
118+
87816B4027B09CBD00FC958F /* CopyFiles */,
119+
);
120+
buildRules = (
121+
);
122+
dependencies = (
123+
);
124+
name = SwiftWebUIApp;
125+
packageProductDependencies = (
126+
87816B4D27B09CF300FC958F /* SwiftWebUI */,
127+
);
128+
productName = SwiftWebUIApp;
129+
productReference = 87816B4227B09CBD00FC958F /* SwiftWebUIApp */;
130+
productType = "com.apple.product-type.tool";
131+
};
132+
/* End PBXNativeTarget section */
133+
134+
/* Begin PBXProject section */
135+
87816B3A27B09CBD00FC958F /* Project object */ = {
136+
isa = PBXProject;
137+
attributes = {
138+
BuildIndependentTargetsInParallel = 1;
139+
LastSwiftUpdateCheck = 1320;
140+
LastUpgradeCheck = 1320;
141+
TargetAttributes = {
142+
87816B4127B09CBD00FC958F = {
143+
CreatedOnToolsVersion = 13.2.1;
144+
};
145+
};
146+
};
147+
buildConfigurationList = 87816B3D27B09CBD00FC958F /* Build configuration list for PBXProject "SwiftWebUIApp" */;
148+
compatibilityVersion = "Xcode 13.0";
149+
developmentRegion = en;
150+
hasScannedForEncodings = 0;
151+
knownRegions = (
152+
en,
153+
Base,
154+
);
155+
mainGroup = 87816B3927B09CBD00FC958F;
156+
packageReferences = (
157+
87816B4C27B09CF300FC958F /* XCRemoteSwiftPackageReference "SwiftWebUI" */,
158+
);
159+
productRefGroup = 87816B4327B09CBD00FC958F /* Products */;
160+
projectDirPath = "";
161+
projectRoot = "";
162+
targets = (
163+
87816B4127B09CBD00FC958F /* SwiftWebUIApp */,
164+
);
165+
};
166+
/* End PBXProject section */
167+
168+
/* Begin PBXSourcesBuildPhase section */
169+
87816B3E27B09CBD00FC958F /* Sources */ = {
170+
isa = PBXSourcesBuildPhase;
171+
buildActionMask = 2147483647;
172+
files = (
173+
87816B5327B09FBA00FC958F /* LoginView.swift in Sources */,
174+
87816B5527B09FC100FC958F /* RegisterView.swift in Sources */,
175+
87816B5127B09F6000FC958F /* RootView.swift in Sources */,
176+
87816B5A27B0A1EC00FC958F /* TodoModel.swift in Sources */,
177+
87816B5727B09FCF00FC958F /* MainView.swift in Sources */,
178+
87816B5D27B0A65900FC958F /* String+.swift in Sources */,
179+
87816B4627B09CBD00FC958F /* main.swift in Sources */,
180+
);
181+
runOnlyForDeploymentPostprocessing = 0;
182+
};
183+
/* End PBXSourcesBuildPhase section */
184+
185+
/* Begin XCBuildConfiguration section */
186+
87816B4727B09CBD00FC958F /* Debug */ = {
187+
isa = XCBuildConfiguration;
188+
buildSettings = {
189+
ALWAYS_SEARCH_USER_PATHS = NO;
190+
CLANG_ANALYZER_NONNULL = YES;
191+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
192+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
193+
CLANG_CXX_LIBRARY = "libc++";
194+
CLANG_ENABLE_MODULES = YES;
195+
CLANG_ENABLE_OBJC_ARC = YES;
196+
CLANG_ENABLE_OBJC_WEAK = YES;
197+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
198+
CLANG_WARN_BOOL_CONVERSION = YES;
199+
CLANG_WARN_COMMA = YES;
200+
CLANG_WARN_CONSTANT_CONVERSION = YES;
201+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
202+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
203+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
204+
CLANG_WARN_EMPTY_BODY = YES;
205+
CLANG_WARN_ENUM_CONVERSION = YES;
206+
CLANG_WARN_INFINITE_RECURSION = YES;
207+
CLANG_WARN_INT_CONVERSION = YES;
208+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
209+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
210+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
211+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
212+
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
213+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
214+
CLANG_WARN_STRICT_PROTOTYPES = YES;
215+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
216+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
217+
CLANG_WARN_UNREACHABLE_CODE = YES;
218+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
219+
COPY_PHASE_STRIP = NO;
220+
DEBUG_INFORMATION_FORMAT = dwarf;
221+
ENABLE_STRICT_OBJC_MSGSEND = YES;
222+
ENABLE_TESTABILITY = YES;
223+
GCC_C_LANGUAGE_STANDARD = gnu11;
224+
GCC_DYNAMIC_NO_PIC = NO;
225+
GCC_NO_COMMON_BLOCKS = YES;
226+
GCC_OPTIMIZATION_LEVEL = 0;
227+
GCC_PREPROCESSOR_DEFINITIONS = (
228+
"DEBUG=1",
229+
"$(inherited)",
230+
);
231+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
232+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
233+
GCC_WARN_UNDECLARED_SELECTOR = YES;
234+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
235+
GCC_WARN_UNUSED_FUNCTION = YES;
236+
GCC_WARN_UNUSED_VARIABLE = YES;
237+
MACOSX_DEPLOYMENT_TARGET = 11.6;
238+
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
239+
MTL_FAST_MATH = YES;
240+
ONLY_ACTIVE_ARCH = YES;
241+
SDKROOT = macosx;
242+
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
243+
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
244+
};
245+
name = Debug;
246+
};
247+
87816B4827B09CBD00FC958F /* Release */ = {
248+
isa = XCBuildConfiguration;
249+
buildSettings = {
250+
ALWAYS_SEARCH_USER_PATHS = NO;
251+
CLANG_ANALYZER_NONNULL = YES;
252+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
253+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
254+
CLANG_CXX_LIBRARY = "libc++";
255+
CLANG_ENABLE_MODULES = YES;
256+
CLANG_ENABLE_OBJC_ARC = YES;
257+
CLANG_ENABLE_OBJC_WEAK = YES;
258+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
259+
CLANG_WARN_BOOL_CONVERSION = YES;
260+
CLANG_WARN_COMMA = YES;
261+
CLANG_WARN_CONSTANT_CONVERSION = YES;
262+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
263+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
264+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
265+
CLANG_WARN_EMPTY_BODY = YES;
266+
CLANG_WARN_ENUM_CONVERSION = YES;
267+
CLANG_WARN_INFINITE_RECURSION = YES;
268+
CLANG_WARN_INT_CONVERSION = YES;
269+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
270+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
271+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
272+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
273+
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
274+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
275+
CLANG_WARN_STRICT_PROTOTYPES = YES;
276+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
277+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
278+
CLANG_WARN_UNREACHABLE_CODE = YES;
279+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
280+
COPY_PHASE_STRIP = NO;
281+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
282+
ENABLE_NS_ASSERTIONS = NO;
283+
ENABLE_STRICT_OBJC_MSGSEND = YES;
284+
GCC_C_LANGUAGE_STANDARD = gnu11;
285+
GCC_NO_COMMON_BLOCKS = YES;
286+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
287+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
288+
GCC_WARN_UNDECLARED_SELECTOR = YES;
289+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
290+
GCC_WARN_UNUSED_FUNCTION = YES;
291+
GCC_WARN_UNUSED_VARIABLE = YES;
292+
MACOSX_DEPLOYMENT_TARGET = 11.6;
293+
MTL_ENABLE_DEBUG_INFO = NO;
294+
MTL_FAST_MATH = YES;
295+
SDKROOT = macosx;
296+
SWIFT_COMPILATION_MODE = wholemodule;
297+
SWIFT_OPTIMIZATION_LEVEL = "-O";
298+
};
299+
name = Release;
300+
};
301+
87816B4A27B09CBD00FC958F /* Debug */ = {
302+
isa = XCBuildConfiguration;
303+
buildSettings = {
304+
CODE_SIGN_STYLE = Automatic;
305+
DEVELOPMENT_TEAM = 2H5PN3F9B6;
306+
ENABLE_HARDENED_RUNTIME = YES;
307+
PRODUCT_NAME = "$(TARGET_NAME)";
308+
SWIFT_VERSION = 5.0;
309+
};
310+
name = Debug;
311+
};
312+
87816B4B27B09CBD00FC958F /* Release */ = {
313+
isa = XCBuildConfiguration;
314+
buildSettings = {
315+
CODE_SIGN_STYLE = Automatic;
316+
DEVELOPMENT_TEAM = 2H5PN3F9B6;
317+
ENABLE_HARDENED_RUNTIME = YES;
318+
PRODUCT_NAME = "$(TARGET_NAME)";
319+
SWIFT_VERSION = 5.0;
320+
};
321+
name = Release;
322+
};
323+
/* End XCBuildConfiguration section */
324+
325+
/* Begin XCConfigurationList section */
326+
87816B3D27B09CBD00FC958F /* Build configuration list for PBXProject "SwiftWebUIApp" */ = {
327+
isa = XCConfigurationList;
328+
buildConfigurations = (
329+
87816B4727B09CBD00FC958F /* Debug */,
330+
87816B4827B09CBD00FC958F /* Release */,
331+
);
332+
defaultConfigurationIsVisible = 0;
333+
defaultConfigurationName = Release;
334+
};
335+
87816B4927B09CBD00FC958F /* Build configuration list for PBXNativeTarget "SwiftWebUIApp" */ = {
336+
isa = XCConfigurationList;
337+
buildConfigurations = (
338+
87816B4A27B09CBD00FC958F /* Debug */,
339+
87816B4B27B09CBD00FC958F /* Release */,
340+
);
341+
defaultConfigurationIsVisible = 0;
342+
defaultConfigurationName = Release;
343+
};
344+
/* End XCConfigurationList section */
345+
346+
/* Begin XCRemoteSwiftPackageReference section */
347+
87816B4C27B09CF300FC958F /* XCRemoteSwiftPackageReference "SwiftWebUI" */ = {
348+
isa = XCRemoteSwiftPackageReference;
349+
repositoryURL = "https://github.com/SwiftWebUI/SwiftWebUI.git";
350+
requirement = {
351+
kind = exactVersion;
352+
version = 0.3.0;
353+
};
354+
};
355+
/* End XCRemoteSwiftPackageReference section */
356+
357+
/* Begin XCSwiftPackageProductDependency section */
358+
87816B4D27B09CF300FC958F /* SwiftWebUI */ = {
359+
isa = XCSwiftPackageProductDependency;
360+
package = 87816B4C27B09CF300FC958F /* XCRemoteSwiftPackageReference "SwiftWebUI" */;
361+
productName = SwiftWebUI;
362+
};
363+
/* End XCSwiftPackageProductDependency section */
364+
};
365+
rootObject = 87816B3A27B09CBD00FC958F /* Project object */;
366+
}

SwiftWebUIApp/SwiftWebUIApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata

+7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)