public async Task <object?> CreateAsync(StorageFileViewModel item)
        {
            if (item.Parent is null)
            {
                return(null);
            }

            string scenePath = Path.GetFileNameWithoutExtension(item.Name);

            StorageFolderViewModel rootFolder  = item.Parent;
            StorageFileViewModel?  projectFile = (await rootFolder.GetFilesAsync()).FirstOrDefault(s => Path.GetExtension(s.Name).Contains("proj"));

            while (projectFile is null && rootFolder.Parent != null)
            {
                scenePath = Path.Combine(rootFolder.Name, scenePath);

                rootFolder  = rootFolder.Parent;
                projectFile = (await rootFolder.GetFilesAsync()).FirstOrDefault(s => Path.GetExtension(s.Name).Contains("proj"));
            }

            if (projectFile != null)
            {
                await LoadAssemblyAsync(rootFolder.Model, Path.GetFileNameWithoutExtension(projectFile.Name));
            }

            return(new SceneEditorViewModel(rootFolder, scenePath));
        }