diff --git a/docs/FILE_STRUCTURE.md b/docs/FILE_STRUCTURE.md new file mode 100644 index 0000000..90e524f --- /dev/null +++ b/docs/FILE_STRUCTURE.md @@ -0,0 +1,17 @@ +# File Structure +``` +Jar Root/ +- scriptcraft + - JS or JSON files +``` + +## Recommended Source Structure +``` +Source Root/ +- ModID + - index.js/index.ts + - Other Modules +``` + +### Why is an index file necessary? +Because of the way module resolution in ScriptCraft works, you cannot load a module with ```import 'module-name';``` and no index file. Without an index file you would need to use ```import 'module-name/main';``` to load it and specify ```module-name/main``` as your entry-point. \ No newline at end of file diff --git a/docs/README.md b/docs/README.md index 5af6140..b02d337 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,4 +5,6 @@ [View Bridges](BRIDGES.md) +[View File Structure](FILE_STRUCTURE.md) + [View TypeDoc](https://jenkins.thebrokenrail.com/job/ScriptCraft/job/master/TypeDoc/) \ No newline at end of file diff --git a/examples/javascript/src/main/java/com/thebrokenrail/scriptcraft/example/JavaScriptExample.java b/examples/javascript/src/main/java/com/thebrokenrail/scriptcraft/example/JavaScriptExample.java index b168ccb..dff083a 100644 --- a/examples/javascript/src/main/java/com/thebrokenrail/scriptcraft/example/JavaScriptExample.java +++ b/examples/javascript/src/main/java/com/thebrokenrail/scriptcraft/example/JavaScriptExample.java @@ -1,15 +1,10 @@ package com.thebrokenrail.scriptcraft.example; -import com.thebrokenrail.scriptcraft.core.ScriptCraftEntrypoint; +import com.thebrokenrail.scriptcraft.core.ScriptCraftEntryPoint; -public class JavaScriptExample implements ScriptCraftEntrypoint { +public class JavaScriptExample implements ScriptCraftEntryPoint { @Override - public String getModID() { + public String getEntryPoint() { return "modid"; } - - @Override - public String getModIndex() { - return "index.js"; - } } \ No newline at end of file diff --git a/examples/typescript/src/main/java/com/thebrokenrail/scriptcraft/example/TypeScriptExample.java b/examples/typescript/src/main/java/com/thebrokenrail/scriptcraft/example/TypeScriptExample.java index ff4005c..6fdb65b 100644 --- a/examples/typescript/src/main/java/com/thebrokenrail/scriptcraft/example/TypeScriptExample.java +++ b/examples/typescript/src/main/java/com/thebrokenrail/scriptcraft/example/TypeScriptExample.java @@ -1,15 +1,10 @@ package com.thebrokenrail.scriptcraft.example; -import com.thebrokenrail.scriptcraft.core.ScriptCraftEntrypoint; +import com.thebrokenrail.scriptcraft.core.ScriptCraftEntryPoint; -public class TypeScriptExample implements ScriptCraftEntrypoint { +public class TypeScriptExample implements ScriptCraftEntryPoint { @Override - public String getModID() { + public String getEntryPoint() { return "modid"; } - - @Override - public String getModIndex() { - return "index.js"; - } } \ No newline at end of file