USE - Universal Solution Explorer
USE (Universal Solution Explorer) - Visual Studio-style Solution Explorer for VS Code and Cursor.
Organize work in a logical tree, independent of disk folders:
Solution
├── Shared Items
├── Solution Folders
│ └── Projects -> Files
├── Documentation folder -> Files
└── Projects -> Files
Publisher: Nishiio · Format: *.solution.json
Marketplace
Install / rate / follow the project here:
https://marketplace.visualstudio.com/items?itemName=Nishiio.universal-solution-explorer
If USE helps you, please leave a rating and a short review on the Marketplace page - it really helps the project grow.
And do not hesitate to ask for evolutions (features, UX, Git, languages, etc.) in the Q&A / reviews: feedback is welcome.
- EN: Rate the extension and request features on the Marketplace page.
- FR: N'hesitez pas a noter l'extension et a demander des evolutions sur la page Marketplace.
Screenshots
Solution Explorer

Open Recent

Create new project



Features
Logical structure
- Create / open a solution (
*.solution.json)
- Nested Solution Folders (rename, strict delete if not empty)
- Projects: add existing folder, rename, move, type, language
- A folder that contains
src-tauri/tauri.conf.json is suggested as Windows + JavaScript
- Project types: Front, Back, Library, Tool, Bot, Console, Windows, Android, iOS, Multiplatform, Other
- Language list filtered by project type (Kotlin, Swift, .NET MAUI, Flutter, React Native, Vue, Rust, …)
- Expand a Project -> real filesystem tree
Documentation folder
- Not a project: a solution folder bound to a real directory
- New Documentation Folder… on the solution or a solution folder
- Created beside the
.solution.json (existing files are kept, nothing is overwritten)
- Starter layout:
README.md, General/, Projet/ (NN_NAME.md notes, in order)
- New file, new folder, rename, and delete inside the tree
- Removing the folder from the solution does not delete the files
- Cannot contain projects
Shared Items
- Fixed node at the solution root, like Visual Studio solution items
- New File / New Folder are created beside the
.solution.json and listed in sharedItems
- Add Existing Item… attaches a file or folder already on disk
- Remove from Shared Items drops it from the solution and leaves the file on disk
- Delete sends it to the trash and removes it from the list
- A shared folder expands to its real contents
Create New Project
- Dedicated USE wizard (Visual Studio-style: template → snippets → configure → summary)
- Extensible Project Bases: Vue 3 + TS, Windows Desktop (Tauri 2 + Vue 3 + Vite + Rust), Node Express API, C# Console, Node.js Console, Hello World, Empty
- Templates shown as tiles: project-type icon + technology logo
- Optional snippets: README, .gitignore, EditorConfig, VS Code recommendations
- Adds the project to the current solution, or creates a new
*.solution.json
Personal templates
- Command My Project Templates… (File menu, USE toolbar, welcome view, or My templates… in the wizard)
- Build your own Project Bases: named folders, named files, optional static content
- Visual file tree + Monaco code editor (syntax highlighting, line numbers)
- Drag and drop to nest folders/files or move them back to the project root
- Type and technology picked as tiles (same icons as the wizard)
- Stored once per PC in
~/.use/project-templates.json (shared by Cursor and VS Code)
- Appear in Create New Project under Custom (or Web / Backend / Console from the project type)
- No dynamic variables: files are written as-is
Quick access
- Activity Bar USE
- Toolbar: Create Project · Templates · Create Solution · Open · Open Recent · Sync · Refresh · Sync with Active Document · clutter filter
- Sync with Active Document expands every parent and selects the file open in the editor
- A clutter-filtered file stays visible along that path so it can still be found
- Restore last solution on startup
- Recent solutions history
Workspace / Git
- Auto sync solution + projects to Workspace
- Git decorations + Stage / Unstage / Open Changes
- View File History (Timeline + commits)
- Add to .gitignore
- Always Show (Ignore Clutter Filter) keeps one file or folder visible for that solution (
clutterExceptions in *.solution.json)
- Treat as Clutter Again puts it back under the filter
.git stays hidden
UI language
- Setting
universalSolutionExplorer.uiLanguage
en (default) or fr
- Changing the language reloads the window automatically
Settings
| Setting |
Default |
Role |
uiLanguage |
en |
USE UI language (en / fr) |
restoreLastSolution |
true |
Restore last solution on startup |
maxRecentSolutions |
12 |
Recent history size |
syncWorkspaceFolders |
true |
Auto workspace sync |
workspaceSyncMode |
projects |
projects or solutionRoot |
hideNoiseEntries |
true |
Clutter filter |
Prefix: universalSolutionExplorer.*
Quick start
- Install USE from the Marketplace
- Open Activity Bar icon USE
- Create New Project / My Project Templates / Create Solution / Open / Open Recent
- Right-click -> New Solution Folder / New Documentation Folder / Add Existing Project
- Use Shared Items at the solution root for files that belong to the solution, not to a project
Notes
- Remove from Solution / Remove from Shared Items != Delete
- Personal templates do not support
{{projectName}} or other tokens — content is copied as written
- OS splash screen for Cursor cannot be provided by an extension
USE - Universal Solution Explorer
USE (Universal Solution Explorer) — un Explorateur de solutions façon Visual Studio pour VS Code et Cursor.
Organise le travail dans un arbre logique, indépendant des dossiers du disque :
Solution
├── Éléments partagés
├── Dossiers de solution
│ └── Projets -> Fichiers
├── Dossier documentation -> Fichiers
└── Projets -> Fichiers
Éditeur : Nishiio · Format : *.solution.json
Marketplace
Installer, noter et suivre le projet :
https://marketplace.visualstudio.com/items?itemName=Nishiio.universal-solution-explorer
Si USE te sert, laisse une note et un court avis sur la page Marketplace — ça aide vraiment le projet à grandir.
N’hésite pas non plus à demander des évolutions (fonctionnalités, UX, Git, langages, etc.) dans les questions / avis.
Fonctionnalités
Structure logique
- Créer / ouvrir une solution (
*.solution.json)
- Dossiers de solution imbriqués (renommer, suppression refusée s’ils ne sont pas vides)
- Projets : ajouter un dossier existant, renommer, déplacer, type, langage
- Un dossier qui contient
src-tauri/tauri.conf.json est proposé en Windows + JavaScript
- Types de projet : Front, Back, Bibliothèque, Tool, Bot, Console, Windows, Android, iOS, Multiplateforme, Autre
- Liste de langages filtrée selon le type (Kotlin, Swift, .NET MAUI, Flutter, React Native, Vue, Rust, …)
- Déplier un projet affiche l’arborescence réelle du disque
Dossier documentation
- Ce n’est pas un projet : c’est un dossier de solution relié à un vrai répertoire
- Nouveau dossier documentation… sur la solution ou un dossier de solution
- Créé à côté du
.solution.json (les fichiers déjà présents sont conservés, rien n’est écrasé)
- Structure de départ :
README.md, General/, Projet/ (notes NN_NOM.md, dans l’ordre)
- Nouveau fichier, nouveau dossier, renommer et supprimer dans l’arbre
- Retirer le dossier de la solution ne supprime pas les fichiers
- Ne peut pas contenir de projets
Éléments partagés
- Nœud fixe à la racine de la solution, comme les éléments de solution Visual Studio
- Nouveau fichier / Nouveau dossier sont créés à côté du
.solution.json et listés dans sharedItems
- Ajouter un élément existant… rattache un fichier ou un dossier déjà sur le disque
- Retirer des éléments partagés le sort de la solution et laisse le fichier sur le disque
- Supprimer l’envoie à la corbeille et le retire de la liste
- Un dossier partagé se déplie sur son contenu réel
Créer un nouveau projet
- Assistant USE dédié (façon Visual Studio : modèle → snippets → configuration → résumé)
- Project Bases extensibles : Vue 3 + TS, Application Windows (Tauri 2 + Vue 3 + Vite + Rust), API Node Express, Console C#, Console Node.js, Hello World, Vide
- Modèles affichés en cases : icône de type + logo de techno
- Snippets optionnels : README, .gitignore, EditorConfig, recommandations VS Code
- Ajoute le projet à la solution ouverte, ou crée un nouveau
*.solution.json
Templates personnels
- Commande Mes templates de projet… (menu Fichier, barre USE, vue d’accueil, ou Mes templates… dans l’assistant)
- Crée tes propres Project Bases : dossiers nommés, fichiers nommés, contenu statique optionnel
- Arbre visuel + éditeur Monaco (coloration, numéros de ligne)
- Glisser-déposer pour imbriquer des dossiers / fichiers ou les remonter à la racine du projet
- Type et techno choisis en cases (mêmes icônes que l’assistant)
- Un seul fichier par PC :
~/.use/project-templates.json (partagé entre Cursor et VS Code)
- Apparaissent dans Créer un nouveau projet sous Perso (ou Web / Backend / Console selon le type)
- Pas de variables dynamiques : les fichiers sont écrits tels quels
Accès rapide
- Icône USE dans la barre d’activité
- Barre : Créer un projet · Templates · Créer une solution · Ouvrir · Récent · Sync · Actualiser · Synchroniser avec le document actif · filtre clutter
- Synchroniser avec le document actif déplie tous les parents et sélectionne le fichier ouvert dans l’éditeur
- Un fichier masqué par le filtre clutter reste visible le long de ce chemin pour pouvoir le retrouver
- Restaure la dernière solution au démarrage
- Historique des solutions récentes
Workspace / Git
- Synchronisation automatique de la solution et des projets vers le Workspace
- Décorations Git + Indexer / Désindexer / Ouvrir les changements
- Voir l’historique du fichier (Timeline + commits)
- Ajouter au .gitignore
- Toujours afficher (ignorer le filtre) garde un fichier ou un dossier visible pour cette solution (
clutterExceptions dans *.solution.json)
- Traiter à nouveau comme inutile le remet sous le filtre
.git reste toujours masqué
Langue de l’interface
- Paramètre
universalSolutionExplorer.uiLanguage
en (défaut) ou fr
- Changer la langue recharge la fenêtre automatiquement
Paramètres
| Paramètre |
Défaut |
Rôle |
uiLanguage |
en |
Langue de l’interface USE (en / fr) |
restoreLastSolution |
true |
Rouvre la dernière solution au démarrage |
maxRecentSolutions |
12 |
Taille de l’historique récent |
syncWorkspaceFolders |
true |
Sync automatique du workspace |
workspaceSyncMode |
projects |
projects ou solutionRoot |
hideNoiseEntries |
true |
Filtre des fichiers inutiles |
Préfixe : universalSolutionExplorer.*
Démarrage rapide
- Installer USE depuis le Marketplace
- Ouvrir l’icône USE dans la barre d’activité
- Créer un nouveau projet / Mes templates de projet / Créer une solution / Ouvrir / Ouvrir une solution récente
- Clic droit → Nouveau dossier de solution / Nouveau dossier documentation / Ajouter un projet existant
- Utiliser les Éléments partagés à la racine pour les fichiers qui appartiennent à la solution, pas à un projet
Notes
- Retirer de la solution / Retirer des éléments partagés n’est pas Supprimer
- Les templates personnels ne gèrent pas
{{projectName}} ni d’autres jetons — le contenu est copié tel quel
- Un splash écran au démarrage de Cursor ne peut pas être fourni par une extension
| |