mirror of
https://github.com/tiddly-gittly/TidGi-Desktop.git
synced 2026-01-14 21:31:46 -08:00
| .. | ||
| agentBrowser | ||
| agentDefinition | ||
| agentInstance | ||
| auth | ||
| context | ||
| database | ||
| deepLink | ||
| externalAPI | ||
| git | ||
| libs | ||
| menu | ||
| native | ||
| notifications | ||
| preferences | ||
| sync | ||
| systemPreferences | ||
| theme | ||
| updater | ||
| view | ||
| wiki | ||
| wikiEmbedding | ||
| wikiGitWorkspace | ||
| windows | ||
| workspaces | ||
| workspacesView | ||
| container.ts | ||
| Readme.md | ||
| ServiceDependencies.md | ||
| serviceIdentifier.ts | ||
| types.ts | ||
services
Service Architecture
See ServiceDependencies.md for detailed documentation on:
- Service dependency layers and relationships
- Circular dependency chains
- When to use constructor injection vs lazy injection vs container.get()
- Current injection status for all services
Adding new Service
See docs/internal/ServiceIPC.md.
Injection Guidelines
- Use constructor injection for services in Layer 0-2 (foundation/basic/middle services)
- Use lazy injection for services in Layer 3-4 with circular dependencies
- Use container.get() only inside methods when absolutely necessary for circular dependencies
- Always document the reason when using lazy injection or container.get()
Before adding dependencies, check ServiceDependencies.md to understand the service layers and avoid creating new circular dependencies.