simvx.editor.project_registry

ProjectRegistry — recent project tracking with persistence via AppConfig.

Module Contents

Classes

RecentProject

ProjectRegistry

Tracks recently opened projects, persisted via AppConfig.general.recent_projects.

Data

log

API

simvx.editor.project_registry.log

‘getLogger(…)’

class simvx.editor.project_registry.RecentProject
path: str

None

name: str

None

template_type: str

None

last_opened: str

None

class simvx.editor.project_registry.ProjectRegistry(config: simvx.core.config.AppConfig | None = None)

Tracks recently opened projects, persisted via AppConfig.general.recent_projects.

Initialization

MAX_RECENT

20

add(project_dir: str) None

Add or bump a project to the top of the recent list.

remove(project_dir: str) None

Remove a project from the recent list (does not delete files).

scan(project_dir: str) simvx.editor.project_registry.RecentProject | None

Read project.simvx metadata from a directory. Returns None if invalid.

refresh() None

Re-scan all entries, pruning missing directories.

load() None

Load from AppConfig.general.recent_projects.

save() None

Persist to AppConfig.general.recent_projects.

static has_project_file(directory: str | pathlib.Path) bool

Check if a directory contains a project.simvx or legacy project.json.