
Install via UPM
Add to Unity Package Manager using this URL
https://www.pkglnk.dev/favorite-assets.git?path=Packages/FavoriteAssets README Markdown
Copy this to your project's README.md
## Installation
Add **Favorite Assets** to your Unity project via Package Manager:
1. Open **Window > Package Manager**
2. Click **+** > **Add package from git URL**
3. Enter:
```
https://www.pkglnk.dev/favorite-assets.git?path=Packages%2FFavoriteAssets
```
[](https://www.pkglnk.dev/pkg/favorite-assets)README
Favorite Assets
A Unity Editor tool that allows you to mark Unity assets and folders as favorites for quick access through a dedicated window with context menu integration.
Table of Contents
Features
ποΈ Asset Organization
- Collapsible Groups: Organize your favorites into named, collapsible groups for better management
- Group Management: Create, rename (double-click), and delete groups with confirmation dialogs
- Drag-Free Organization: Right-click context menu to easily move assets between groups
- Smart Layout: Ungrouped assets appear first, followed by organized grouped content
π― Quick Access & Navigation
- Context Menu Integration: Mark any Unity asset or folder as a favorite from the Project window
- Dedicated Window: Clean, modern UI for viewing and managing all your favorites
- One-Click Access: Single-click to select, double-click to open assets
- Visual Hierarchy: Groups have distinctive blue headers with expand/collapse arrows
π§ Advanced Controls
- Smart Sorting: Multiple sorting options with easy-to-use cycling buttons:
- Name (A-Z or Z-A)
- Type (Asset type, then name)
- Date Added (when you first favorited it)
- File Modified (actual file modification date from disk)
- Colorful Toolbar: Color-coded buttons for intuitive navigation:
- π΅ Blue: Sort type cycling
- π’ Green: Sort order toggle
- π£ Purple: Create new group
- π· Teal: Refresh list
- π΄ Red: Clear all favorites
- Status Bar: Bottom status line showing total count of favorite assets
π‘οΈ Reliability & Performance
- Automatic Cleanup: Deleted assets are automatically removed from favorites
- Persistent Storage: Data survives Unity restarts and project switches
- GUID-based Tracking: Favorites persist even when assets are moved or renamed
- Thread-Safe Operations: Robust data management with proper locking mechanisms
Installation
Method 1: OpenUPM (Recommended)
Install via OpenUPM:
Using OpenUPM CLI:
openupm add com.mezookan.favorite-assets
Using Unity Package Manager:
- Open Edit β Project Settings β Package Manager
- Add a new Scoped Registry:
- Name:
OpenUPM - URL:
https://package.openupm.com - Scope:
com.mezookan
- Name:
- Open Window β Package Manager
- Select My Registries from the dropdown
- Find and install Favorite Assets
Method 2: Package Manager (Git URL)
- Open Unity and navigate to Window β Package Manager
- Click the + button in the top-left corner
- Select Add package from git URL...
- Enter the following URL:
https://github.com/yourusername/favorite-assets.git?path=Packages/FavoriteAssets - Click Add
Method 3: Local Package
- Download or clone this repository to your local machine
- In Unity, open Window β Package Manager
- Click the + button in the top-left corner
- Select Add package from disk...
- Navigate to the downloaded folder and select
package.jsoninside thePackages/FavoriteAssets/directory - Click Open
Method 4: Manual Installation
Add this to your manifest.json file located in the Packages folder of your project:
{
"scopedRegistries": [
{
"name": "OpenUPM",
"url": "https://package.openupm.com",
"scopes": ["com.mezookan"]
}
],
"dependencies": {
"com.mezookan.favorite-assets": "1.2.0"
}
}
Requirements
- Unity Version: 2022.3 or later
- Editor Only: This package only works in the Unity Editor (not in builds)
Usage
Adding Favorites
- Right-click any asset or folder in the Project window
- Select Add to Favorites from the context menu
Opening the Window
- Open the Favorite Assets window via Window β Favorite Assets
- The window displays all your favorite assets with their icons, names, and paths
- Single-click to select an asset in the Project window
- Double-click to open the asset
Working with Groups
- Creating Groups:
- Click the π£ "+ Group" button in the toolbar
- Groups are created with timestamp names (e.g., "Group 14:32:15")
- Renaming Groups:
- Double-click any group name to edit it inline
- Press Enter to save or Escape to cancel
- Organizing Assets:
- Right-click any asset to open the context menu
- Select "Move to Group" β choose target group
- Use "Remove from Group" to move assets back to ungrouped
- Managing Groups:
- Click βΆ/βΌ arrows to expand/collapse groups
- Click Γ button to delete groups (assets move to ungrouped)
- Groups remember their collapsed state
Sorting & Filtering
- Sorting Controls:
- π΅ Blue Button: Click to cycle through sorting options (Name β Type β Added β Modified)
- π’ Green Button: Click to toggle sort order (β ascending / β descending)
- Sorting applies to both grouped and ungrouped assets
- Action Buttons:
- π· Refresh: Update the list and clean up any deleted assets
- π΄ Clear All: Remove all favorites (with confirmation dialog)
- Status Information:
- Bottom status bar shows total count of all favorite assets
- Group headers show count of assets in each group
- Automatic Cleanup: Deleted assets are automatically removed when the window refreshes or gains focus
Technical Details
Data Architecture
- Storage Format: Favorites and groups stored in JSON format at
Application.persistentDataPath/Editor/FavoriteAssetsData.json - Group System: New
FavoriteGroupclass with metadata (ID, name, collapsed state, creation date, sort order) - Asset Linking: Assets linked to groups via
groupIdfield inFavoriteAssetData - Serialization: DateTime fields converted to serializable long ticks for Unity compatibility
Performance & Reliability
- Thread Safety: Uses thread-safe data access patterns with proper locking mechanisms
- Smart Asset Validation:
- Checks both Unity GUID system and file system existence
- Automatically removes deleted assets from favorites and groups
- Validates assets on load, focus, and refresh
- File Modification Tracking: Real-time monitoring of actual file modification dates from disk
- Memory Efficient: Optimized data structures and minimal garbage collection
User Interface
- UI Framework: Built using Unity's UIElements system with modern USS styling
- Responsive Design: Compact, scalable interface that adapts to different window sizes
- Color Coding: Distinctive colors for each button type to improve usability
- Context Menus: Native Unity GenericMenu integration for intuitive asset management
- Inline Editing: TextField-based group renaming with keyboard shortcuts
Uninstallation
To remove the package:
- Open Window β Package Manager
- Select In Project from the dropdown
- Find Favorite Assets in the list
- Click Remove
Note: Your favorite assets data will persist even after uninstalling the package. To completely clean up, manually delete the FavoriteAssetsData.json file from your persistent data path if desired.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For issues, feature requests, or questions:
- Create an issue on the GitHub repository
- Contact: contact@mezookan.com
No comments yet. Be the first!