A package manifest describes the package name and the products it builds.

Model manifest fields

package_manifest.swift
let packageName = 
let libraryName = "\(packageName)Core"
let toolName = "\(packageName)CLI"
let products = [libraryName, toolName]
let productList = products.joined(separator: ",")
let summary = "\(packageName): \(productList)"

print(summary)
let packageName = 
let libraryName = "\(packageName)Core"
let toolName = "\(packageName)CLI"
let products = [libraryName, toolName]
let productList = products.joined(separator: ",")
let summary = "\(packageName): \(productList)"

print(summary)
let packageName = 
let libraryName = "\(packageName)Core"
let toolName = "\(packageName)CLI"
let products = [libraryName, toolName]
let productList = products.joined(separator: ",")
let summary = "\(packageName): \(productList)"

print(summary)
manifest SwiftPM reads `Package.swift` as Swift code. This example models manifest data as ordinary values so the replay can show how the fields relate.