Get your own website
Demo.swift
ContentView.swift
App.swift
 
import SwiftUI
import CoreData

struct PersistenceController {
  static let shared = PersistenceController()
  let container: NSPersistentContainer
  init() {
    container = NSPersistentContainer(name: "MyModel")
    if let groupURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.example.notes") {
      let storeURL = groupURL.appendingPathComponent("MyModel.sqlite")
      let description = NSPersistentStoreDescription(url: storeURL)
      container.persistentStoreDescriptions = [description]
    }
    container.loadPersistentStores { _, error in
      if let error = error { fatalError("Unresolved error: \(error)") }
    }
  }
}

struct AppGroupListView: View {
  @Environment(\.managedObjectContext) private var context
  @FetchRequest(sortDescriptors: []) private var items: FetchedResults<Item>

  var body: some View {
    List(items) { item in Text(item.title ?? "") }
      .toolbar { Button("Add") { add() } }
  }

  private func add() {
    let i = Item(context: context)
    i.title = "Shared Item"
    try? context.save()
  }
}

                    
import SwiftUI

struct ContentView: View {
  var body: some View {
    AppGroupListView()
  }
}

                    
import SwiftUI
import CoreData

@main
struct MyApp: App {
  let persistence = PersistenceController.shared
  var body: some Scene {
    WindowGroup {
      ContentView()
        .environment(\.managedObjectContext, persistence.container.viewContext)
    }
  }
}