load method
Implementation
Future<StoredProject?> load(String id) async {
final file = File('${(await _root()).path}/$id/project.json');
if (!await file.exists()) return null;
final json = jsonDecode(await file.readAsString()) as Map<String, dynamic>;
final state = ProjectState.fromJson(
(json['state'] as Map).cast<String, dynamic>(),
);
return StoredProject(summary: _summary(json), state: state);
}