This is 100% my favourite way to organise assets - images or SF symbols, and even localisation strings.
The best part is that you can easily check in unit tests that none of the assets are missing (or misspelled). Just conform your enum to CaseIterable
and test:
Asset.allCases.forEach { XCTAssertNotNil($0.image, "\($0) is missing") }