         try tempFolder.subfolder(named: "Templates").file(named: "LICENSE").move(to: folder)
         try tempFolder.subfolder(named: "Templates").file(named: "README.md").move(to: folder)
         try tempFolder.subfolder(named: "Templates").file(named: "main.swift").move(to: sourcesProjectFolder)
-        try tempFolder.subfolder(named: "Templates").file(named: "\(projectName).swift").move(to: sourcesProjectCoreFolder)
+        try tempFolder.subfolder(named: "Templates").file(named: "\(packageName).swift").move(to: sourcesProjectCoreFolder)
         try tempFolder.subfolder(named: "Templates").file(named: "LinuxMain.swift").move(to: testsFolder)
-        try tempFolder.subfolder(named: "Templates").file(named: "\(projectName)Tests.swift").move(to: projectTestsFolder)
+        try tempFolder.subfolder(named: "Templates").file(named: "\(packageName)Tests.swift").move(to: projectTestsFolder)
 
         print("Deleting the temp folder...")
         try tempFolder.delete()

        try shellOut(to: "swift package init --type executable", at: folder.path)

        let sourcesFolder = try folder.subfolder(atPath: "Sources")
        print("Creating Sources/\(projectName)...")
        let sourcesProjectFolder = try sourcesFolder.createSubfolder(named: projectName)
        print("Creating Sources/\(projectName)Core...")
        let sourcesProjectCoreFolder = try sourcesFolder.createSubfolder(named: projectName + "Core")

        let testsFolder = try folder.subfolder(atPath: "Tests")
        print("Creating Tests/\(projectName)Tests...")
        let projectTestsFolder = try testsFolder.createSubfolder(named: projectName + "Tests")

        print("Deleting original files created by SwiftPM...")
        try folder.file(named: "Package.swift").delete()


        print("Generating xcodeproj...")
        try shellOut(to: "swift package generate-xcodeproj", at: folder.path)

        print("Enjoy \(packageName) 🎉")
    }

    // MARK: Private method
