← All repositories

listless

A simple list app for Apple platforms

git clone https://code.inqk.net/listless.git


ListlessiOS/Views/AboutView.swift (3128B)

1import SwiftUI
2
3struct AboutView: View {
4    private var appVersion: String {
5        Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String ?? "Unknown"
6    }
7
8    private var buildNumber: String {
9        Bundle.main.infoDictionary?["CFBundleVersion"] as? String ?? "Unknown"
10    }
11
12    var body: some View {
13        List {
14            Section {
15                VStack(spacing: 8) {
16                    Image("AboutIcon")
17                        .resizable()
18                        .scaledToFit()
19                        .frame(width: 100, height: 100)
20                        .clipShape(RoundedRectangle(cornerRadius: 22))
21
22                    Text("Listless")
23                        .font(.title2)
24                        .fontWeight(.bold)
25
26                    Text("Version \(appVersion) (\(buildNumber))")
27                        .font(.subheadline)
28                        .foregroundStyle(.secondary)
29                        .padding(.bottom, 20)
30
31                    VStack(spacing: 4) {
32                        Text("Programming")
33                            .font(.caption)
34                            .textCase(.uppercase)
35                            .tracking(0.8)
36                            .foregroundStyle(.secondary)
37                        Text("Claude Code and OpenAI Codex")
38                            .font(.subheadline)
39                            .foregroundStyle(.primary)
40                    }
41                    .padding(.bottom, 8)
42
43                    VStack(spacing: 4) {
44                        Text("Direction")
45                            .font(.caption)
46                            .textCase(.uppercase)
47                            .tracking(0.8)
48                            .foregroundStyle(.secondary)
49                        Text("Michael Camilleri")
50                            .font(.subheadline)
51                            .foregroundStyle(.primary)
52                    }
53                }
54                .frame(maxWidth: .infinity)
55                .padding(.bottom, 4)
56                .listRowBackground(Color.clear)
57                .listRowSeparator(.hidden)
58            }
59
60            Section {
61                Link(destination: URL(string: "https://apps.inqk.net/listless")!) {
62                    Label("Website", systemImage: "globe")
63                }
64                Link(destination: URL(string: "https://github.com/pyrmont/listless")!) {
65                    Label("Source Code", systemImage: "chevron.left.forwardslash.chevron.right")
66                }
67            }
68
69            Section {
70                Text(
71                    "Thank you to my wife, daughter and sons for their love and inspiration."
72                )
73                .font(.subheadline)
74                .foregroundStyle(.secondary)
75                .multilineTextAlignment(.center)
76                .frame(maxWidth: .infinity)
77                .listRowBackground(Color.clear)
78                .listRowSeparator(.hidden)
79            }
80        }
81        .contentMargins(.top, 0, for: .scrollContent)
82        .navigationTitle("About")
83        .navigationBarTitleDisplayMode(.inline)
84    }
85}