JustProjectFile class final
A project's just.json.
{
"schema": 1,
"title": "Space Rocks",
"set": "2026.10",
"entry": {"app": "lib/main.dart", "tool": "bin/tool.dart"},
"plugins": {"allowed": ["my_studio_tools"]}
}
Everything is optional: a project without the file gets the defaults. What this version doesn't know — a newer tool's keys, a plugin's own — is kept as it was whenever the file is written again.
Constructors
Properties
-
allowedPlugins
→ List<
String> -
Packages whose
justcommands the user allowed, beyond the official ones.final -
entries
→ Map<
String, String> -
The project's entry points by name (
entryin the file):app→lib/main.dart. The products that read one know its default. Only the string values are here; any other value is kept as it was.final -
extra
→ Map<
String, Object?> -
The file's other top-level keys, as they were read: a newer tool's, or
a plugin's own. Written back as they are.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- set → String?
-
The tool set (ToolSet) the project's tools come from; each plugin
keeps its own packages' versions.
final
- title → String?
-
The project's name as people see it — the app's title. A product's
release check can look for it in a build to know whose build it is.
final
Methods
-
allowing(
String package) → JustProjectFile -
A copy that allows
package's commands. -
copyWith(
{String? title, String? set, Map< String, String> ? entries, List<String> ? allowedPlugins, Map<String, Object?> ? extra}) → JustProjectFile - A copy with the values given replaced; what the file held besides them stays.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
toText(
) → String -
The file's text. The keys this version knows are left out when they
say nothing (no title, no entries); what it doesn't know is written
back as it was read — a
null,{}or[]too.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
parse(
String text) → JustProjectFile -
textas a project file.