lincd-cli 0.1.0 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +24 -60
  2. package/defaults/defaultModule/Index.tsx +24 -24
  3. package/defaults/defaultModule/index.ts +1 -1
  4. package/defaults/defaultModule/ontology.ts +1 -1
  5. package/defaults/index.ts +1 -1
  6. package/defaults/module/Gruntfile.js +16 -0
  7. package/defaults/module/package.json +29 -0
  8. package/defaults/module/src/components/ExampleComponent.tsx +22 -0
  9. package/defaults/module/src/data/example-ontology.json +20 -0
  10. package/defaults/module/src/data/example-ontology.json.d.ts +1 -0
  11. package/defaults/module/src/index.ts +7 -0
  12. package/defaults/module/src/module.ts +9 -0
  13. package/defaults/module/src/ontologies/example-ontology.ts +33 -0
  14. package/defaults/module/src/shapes/ExampleShapeClass.ts +30 -0
  15. package/defaults/module/tsconfig-es5.json +19 -0
  16. package/defaults/module/tsconfig.json +19 -0
  17. package/defaults/ontology.ts +1 -1
  18. package/defaults/package.json +28 -24
  19. package/defaults/site/.gitignore +8 -0
  20. package/defaults/site/.npmignore +10 -0
  21. package/defaults/site/lib/start-server.js +22 -0
  22. package/defaults/site/lib/test-server.js +10 -0
  23. package/defaults/site/package.json +40 -0
  24. package/defaults/site/storage/filestores/settings-development.jsonld +117 -0
  25. package/defaults/site/storage/filestores/settings-production-template.jsonld +129 -0
  26. package/defaults/site/web/.htaccess +19 -0
  27. package/defaults/site/web/favicon.png +0 -0
  28. package/defaults/site/web/img/placeholder.jpg +0 -0
  29. package/defaults/tsconfig-es5.json +18 -19
  30. package/defaults/tsconfig.json +20 -21
  31. package/lib/cli.js +1074 -0
  32. package/lib/config-grunt.js +254 -0
  33. package/lib/config-webpack.js +273 -0
  34. package/{index.js → lib/index.js} +8 -4
  35. package/lib/interfaces.js +2 -0
  36. package/{plugins → lib/plugins}/declaration-plugin.js +3 -3
  37. package/lib/plugins/externalise-modules.js +165 -0
  38. package/lib/plugins/watch-run.js +47 -0
  39. package/lib/utils.js +127 -0
  40. package/package.json +71 -66
  41. package/{cli.js → src/cli.js} +106 -135
  42. package/src/config-grunt.js +263 -0
  43. package/src/config-webpack.js +281 -0
  44. package/src/index.js +22 -0
  45. package/src/interfaces.js +2 -0
  46. package/src/plugins/declaration-plugin.js +248 -0
  47. package/{plugins → src/plugins}/externalise-modules.js +8 -6
  48. package/src/plugins/shapes-plugin.js +69 -0
  49. package/{plugins → src/plugins}/watch-run.js +0 -0
  50. package/src/utils.js +127 -0
  51. package/config-generator.js +0 -531
package/README.md CHANGED
@@ -1,60 +1,24 @@
1
- # Setup a new dacore module
2
-
3
- `npm install -g @dacore/build-tools`
4
-
5
- will install this module globally so you can access the `dacore` command in the command line
6
-
7
- `dacore init`
8
-
9
- will create npm links to you're previously installed workspace setup (no documentation for that yet!)
10
-
11
- ## tsconfig
12
-
13
- create `tsconfig.json`:
14
-
15
- {
16
- "compilerOptions": {
17
- "module": "commonjs",
18
- "sourceMap": true,
19
- "target": "es6",
20
- "outDir": "lib",
21
- "declaration": true,
22
- "jsx":"react",
23
- "types": [
24
- ]
25
- },
26
- "files": [
27
- "./src/index.ts"
28
- ],
29
- "include" : [
30
- "./node_modules/@dacore/core/builds/dacore.core.d.ts"
31
- ]
32
- }
33
-
34
- and `tsconfig-es5.json`
35
-
36
- {
37
- "compilerOptions": {
38
- "module": "commonjs",
39
- "sourceMap": true,
40
- "target": "ES5",
41
- "jsx":"react",
42
- "lib": ["es2017", "dom"],//required to make core-js work, however there are some issues with this, as it potentially ignores warning for targets you don't support. Hence be careful to only use core-js features that you know are specifically included in @dacore/core or @dacore/browser-core-es5
43
- "types": [
44
- ]
45
- },
46
- "files": [
47
- "./src/index.ts"
48
- ],
49
- "include" : [
50
- "./src/definitions/jison.d.ts",
51
- "./node_modules/@dacore/core/builds/dacore.core.d.ts"
52
- ]
53
- }
54
-
55
- Please do not be tempted to create a symbolic link to your local development version of this package. It will cause trouble, for example when creating new modules.
56
- If you must, remember to undo it after development.
57
-
58
- To upgrade to the latest version run `
59
-
60
- yarn upgrade @dacore/build-tools --latest
1
+ #LINCD CLI
2
+ Command Line Interface for the [lincd.js](https://www.lincd.org) library
3
+
4
+ ### Installation
5
+
6
+ ```
7
+ npm install lincd-cli
8
+ ```
9
+
10
+ or
11
+
12
+ ```
13
+ yarn add lincd-cli
14
+ ```
15
+
16
+ ### Usage
17
+
18
+ type
19
+
20
+ ```
21
+ npm exec lincd help
22
+ ```
23
+
24
+ for available commands
@@ -1,25 +1,25 @@
1
- import {React,ReactComponent} from "@dacore/core/lib/shapes/ReactComponent";
2
- import {UriResource} from "@dacore/core/lib/models/UriResource";
3
- import ${projectName} from "../ontologies/${projectName}";
4
- import "./Index.scss";
5
- import style from "./Index.scss.json";
6
- export default class Index extends ReactComponent<any,any>
7
- {
8
- static viewType: UriResource = ${projectName}.Index;
9
-
10
- render()
11
- {
12
- return <div className={style.Index}>
13
- <hr />
14
- <p>Welcome to your new LINCD setup!</p>
15
- <p>
16
- To start coding:
17
- <ul>
18
- <li>Go to <code>/modules/${browserTitle}</code> and run <code>yarn lincd dev</code> to start developing your module</li>
19
- <li>Open <code>modules/${browserTitle}/src/views/Index.tsx</code> to edit this page.</li>
20
- <li>For pages rendered on the initial page request you currently have to restart the server and refresh the page to see the results (for others you can simply refresh)</li>
21
- </ul>
22
- </p>
23
- </div>
24
- }
1
+ import {React,ReactComponent} from "@dacore/core/lib/shapes/ReactComponent";
2
+ import {UriResource} from "@dacore/core/lib/models";
3
+ import ${projectName} from "../ontologies/${projectName}";
4
+ import "./Index.scss";
5
+ import style from "./Index.scss.json";
6
+ export default class Index extends ReactComponent<any,any>
7
+ {
8
+ static viewType: UriResource = ${projectName}.Index;
9
+
10
+ render()
11
+ {
12
+ return <div className={style.Index}>
13
+ <hr />
14
+ <p>Welcome to your new LINCD setup!</p>
15
+ <p>
16
+ To start coding:
17
+ <ul>
18
+ <li>Go to <code>/modules/${browserTitle}</code> and run <code>yarn lincd dev</code> to start developing your module</li>
19
+ <li>Open <code>modules/${browserTitle}/src/views/Index.tsx</code> to edit this page.</li>
20
+ <li>For pages rendered on the initial page request you currently have to restart the server and refresh the page to see the results (for others you can simply refresh)</li>
21
+ </ul>
22
+ </p>
23
+ </div>
24
+ }
25
25
  }
@@ -1,5 +1,5 @@
1
1
  import {Core} from "@dacore/core/lib/shapes/Core";
2
- import {UriResource} from "@dacore/core/lib/models/UriResource";
2
+ import {UriResource} from "@dacore/core/lib/models";
3
3
  import {JSONLD} from "@dacore/core/lib/utils/JSONLD";
4
4
  import * as ${underscore_ontology_name} from "./ontologies/${ontology_name}"
5
5
  import * as Index from "./views/Index"
@@ -1,4 +1,4 @@
1
- import {UriResource} from "@dacore/core/lib/models/UriResource";
1
+ import {UriResource} from "@dacore/core/lib/models";
2
2
 
3
3
  declare var require:any;
4
4
  import {JSONLD} from "@dacore/core/lib/utils/JSONLD";
package/defaults/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import {Core} from "@dacore/core/lib/shapes/Core";
2
- import {UriResource} from "@dacore/core/lib/models/UriResource";
2
+ import {UriResource} from "@dacore/core/lib/models";
3
3
  import {JSONLD} from "@dacore/core/lib/utils/JSONLD";
4
4
  import * as ${underscore_ontology_name} from "./ontologies/${ontology_name}"
5
5
  //import * as viewName from "./views/viewName"
@@ -0,0 +1,16 @@
1
+ var buildTools = require('lincd-cli');
2
+ module.exports = buildTools.generateGruntConfig('${module_name}', {
3
+ externals: {
4
+ react: 'React',
5
+ 'react-dom': 'ReactDOM',
6
+ }, //list of non lincd modules that are already loaded and made globally available by one of the dependencies of this module
7
+ //internals: [],//list of lincd modules that you want to INCLUDE in the bundle (as opposed to the module its own bundle being a dependency)
8
+ //alias:{},//webpack alias -> maps on type of npm path to another
9
+ //target:"es5"|"es6",
10
+ //environment:"server"|"frontend",
11
+ //outputPath:string,
12
+ //es5Server:boolean
13
+ //es5:{},//es5 specific config, use same properties as above
14
+ //es6:{},//es6 specific config, use same properties as above
15
+ //debug:false,//debug the build process
16
+ });
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "${module_name}",
3
+ "version": "0.1.0",
4
+ "description": "",
5
+ "lincd": true,
6
+ "main": "lib/index.js",
7
+ "types": "dist/lincd.${name}.d.ts",
8
+ "author": "",
9
+ "license": "ISC",
10
+ "scripts": {
11
+ "build": "npm exec lincd build",
12
+ "dev": "npm exec lincd dev",
13
+ "prepublishOnly": "npm exec lincd build production",
14
+ "postpublish": "npm exec lincd publish"
15
+ },
16
+ "keywords": [
17
+ "lincd",
18
+ "linked data",
19
+ "interoperable",
20
+ "semantic web",
21
+ "web3"
22
+ ],
23
+ "dependencies": {
24
+ "lincd": "^0.1"
25
+ },
26
+ "devDependencies": {
27
+ "lincd-cli": "^0.1"
28
+ }
29
+ }
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import {ReactComponent} from 'lincd/lib/shapes/ReactComponent';
3
+ import {ExampleShapeClass} from '../shapes/ExampleShapeClass';
4
+ import {linkedComponent} from '../module';
5
+
6
+ /**
7
+ * By linking this component to a Shape class (a class that extends Shape) you ensure this.source will be an instance of that class
8
+ */
9
+ @linkedComponent(ExampleShapeClass)
10
+ //for correct typings, please provide the same class as third type parameter of ReactComponent, after property & state interfaces
11
+ export class ExampleComponent extends ReactComponent<
12
+ any,
13
+ any,
14
+ ExampleShapeClass
15
+ > {
16
+ render() {
17
+ let exampleInstance = this.source;
18
+
19
+ //get the name of this item from the graph
20
+ return <h1>Hello {exampleInstance.name}!</h1>;
21
+ }
22
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "@context": {
3
+ "dc": "http://purl.org/dc/elements/1.1/",
4
+ "owl": "http://www.w3.org/2002/07/owl#",
5
+ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
6
+ "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
7
+ "test": "http://www.example.com/"
8
+ },
9
+ "@graph": [
10
+ {
11
+ "@id": "example:ExampleClass",
12
+ "@type": "rdfs:Class",
13
+ "rdfs:comment": "This is an example class. You can remove or rename it",
14
+ "rdfs:isDefinedBy": {
15
+ "@id": "example:"
16
+ },
17
+ "rdfs:label": "Example Class"
18
+ }
19
+ ]
20
+ }
@@ -0,0 +1 @@
1
+ export var json: string;
@@ -0,0 +1,7 @@
1
+ import './ontologies/example-ontology';
2
+
3
+ //SHAPES FIRST
4
+ import './shapes/ExampleShapeClass';
5
+
6
+ //THEN COMPONENTS
7
+ import './components/ExampleComponent';
@@ -0,0 +1,9 @@
1
+ import {linkedModule} from 'lincd/lib/utils/Module';
2
+ export const {
3
+ linkedComponent,
4
+ linkedShape,
5
+ linkedUtil,
6
+ linkedOntology,
7
+ registerModuleExport,
8
+ moduleExports,
9
+ } = linkedModule('${module_name}');
@@ -0,0 +1,33 @@
1
+ import {NamedNode} from 'lincd/lib/models';
2
+ import {JSONLD} from 'lincd-jsonld/lib/JSONLD';
3
+ import {createNameSpace} from 'lincd/lib/utils/NameSpace';
4
+ import {linkedOntology} from '../module';
5
+
6
+ export var loadData = () => {
7
+ return import('../data/example-ontology.json').then((data) =>
8
+ JSONLD.parse(data),
9
+ );
10
+ };
11
+
12
+ export var ns = createNameSpace('${uri_base}');
13
+
14
+ //It's recommended to export a NamedNode for the ontology itself as well
15
+ export var _self: NamedNode = ns('');
16
+
17
+ //The main goal though of this file is to export a reference to NamedNode with the correct URI
18
+ // for all the entities (Classes and properties) in the ontology
19
+ export var ExampleClass: NamedNode = ns('ExampleClass');
20
+ export var exampleName: NamedNode = ns('exampleName');
21
+
22
+ export const exampleOntology = {
23
+ ExampleClass,
24
+ exampleName,
25
+ };
26
+
27
+ //finally, we pass on all the exports, plus the namespace, prefix and data loading function
28
+ // as we register this ontology in the LINCD tree
29
+ import * as _this from './example-ontology';
30
+
31
+ //as third parameter, provide a prefix (string) that can be used to refer to the full ontology URL.
32
+ //for example: 'schema' refers to https://www.schema.org/
33
+ linkedOntology(_this, ns, 'exampl', loadData);
@@ -0,0 +1,30 @@
1
+ import {Shape} from 'lincd/lib/shapes/Shape';
2
+ import {NamedNode} from 'lincd/lib/models';
3
+ import {linkedShape} from '../module';
4
+ import {literalProperty} from 'lincd/lib/utils/ShapeDecorators';
5
+ import {Literal} from 'lincd/lib/models';
6
+ import {schema} from 'lincd-schema/lib/ontologies/schema';
7
+ import {exampleOntology} from '../ontologies/example-ontology';
8
+
9
+ @linkedShape
10
+ export class ExampleShapeClass extends Shape {
11
+ /**
12
+ * indicates that instances of this shape need to have this rdf.type
13
+ */
14
+ static targetClass: NamedNode = exampleOntology.ExampleClass;
15
+
16
+ /**
17
+ * instances of this shape need to have exactly one value defined for the given property
18
+ */
19
+ @literalProperty({
20
+ path: exampleOntology.exampleName,
21
+ required: true,
22
+ maxCount: 1,
23
+ })
24
+ get name() {
25
+ return this.getValue(exampleOntology.exampleName);
26
+ }
27
+ set name(val: string) {
28
+ this.overwrite(exampleOntology.exampleName, new Literal(val));
29
+ }
30
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "compilerOptions": {
3
+ "module": "commonjs",
4
+ "sourceMap": true,
5
+ "target": "es5",
6
+ "outDir": "lib",
7
+ "declaration": false,
8
+ "esModuleInterop": true,
9
+ "downlevelIteration": true,
10
+ "experimentalDecorators": true,
11
+ "skipLibCheck": true,
12
+ "jsx": "react",
13
+ "baseUrl": "./",
14
+ "rootDir": "src"
15
+ },
16
+ "files": [
17
+ "./src/index.ts"
18
+ ]
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "compilerOptions": {
3
+ "module": "commonjs",
4
+ "sourceMap": true,
5
+ "target": "es6",
6
+ "outDir": "lib",
7
+ "declaration": true,
8
+ "esModuleInterop": true,
9
+ "downlevelIteration": true,
10
+ "experimentalDecorators": true,
11
+ "skipLibCheck": true,
12
+ "jsx": "react",
13
+ "baseUrl": "./",
14
+ "rootDir": "src"
15
+ },
16
+ "files": [
17
+ "./src/index.ts"
18
+ ]
19
+ }
@@ -1,4 +1,4 @@
1
- import {UriResource} from "@dacore/core/lib/models/UriResource";
1
+ import {UriResource} from "@dacore/core/lib/models";
2
2
 
3
3
  declare var require:any;
4
4
  import {JSONLD} from "@dacore/core/lib/utils/JSONLD";
@@ -1,24 +1,28 @@
1
- {
2
- "name": "@dacore/",
3
- "license": "UNLICENSED",
4
- "version": "0.1.0",
5
- "description": "",
6
- "main": "lib/index.js",
7
- "scripts": {
8
- "build": "dacore build"
9
- },
10
- "keywords": [
11
- "dacore",
12
- "semantu",
13
- "semantic",
14
- "web"
15
- ],
16
- "author": "",
17
- "license": "ISC",
18
- "dependencies": {
19
- "@dacore/core": "1.x"
20
- },
21
- "devDependencies": {
22
- "@dacore/build-tools": "1.x"
23
- }
24
- }
1
+ {
2
+ "name": "@dacore/",
3
+ "version": "0.1.0",
4
+ "description": "",
5
+ "lincd": true,
6
+ "main": "lib/index.js",
7
+ "author": "",
8
+ "license": "ISC",
9
+ "scripts": {
10
+ "build": "npm exec lincd build",
11
+ "dev": "npm exec lincd dev",
12
+ "prepare": "npm exec lincd build production",
13
+ "postpublish": "npm exec lincd publish"
14
+ },
15
+ "keywords": [
16
+ "lincd",
17
+ "linked data",
18
+ "interoperable",
19
+ "semantic web",
20
+ "web3"
21
+ ],
22
+ "dependencies": {
23
+ "lincd": "^0.1"
24
+ },
25
+ "devDependencies": {
26
+ "lincd-cli": "^0.1"
27
+ }
28
+ }
@@ -0,0 +1,8 @@
1
+ **/node_modules
2
+ **/builds
3
+ modules/**/lib
4
+ storage/logs
5
+ storage/uploads
6
+ storage/cached
7
+ storage/filestores/settings-development.jsonld
8
+ .DS_Store
@@ -0,0 +1,10 @@
1
+ **/node_modules
2
+ src
3
+ .idea
4
+ Gruntfile.js
5
+ tsconfig.json
6
+ tsconfig-es5.json
7
+ modules
8
+ storage/cached
9
+ storage/uploads
10
+ storage/logs
@@ -0,0 +1,22 @@
1
+ const serverCore = require('@dacore/server-core');
2
+
3
+ serverCore.default
4
+ .init()
5
+ .then(() => {
6
+ const args = process.argv.slice(2);
7
+ let method;
8
+ if (args.length > 0) {
9
+ // console.log("Applying server method: "+args[0]);
10
+ method = args[0];
11
+ } else {
12
+ method = 'startServer';
13
+ }
14
+ if (serverCore.default[method]) {
15
+ serverCore.default[method]();
16
+ } else {
17
+ console.warn(`Method ${method} does not exist`);
18
+ }
19
+ })
20
+ .catch((err) => {
21
+ console.warn(`Could not start server: ${err.stack}`);
22
+ });
@@ -0,0 +1,10 @@
1
+ const serverCore = require('@dacore/server-core');
2
+
3
+ serverCore.default
4
+ .init()
5
+ .then(() => {
6
+ serverCore.default.runTests();
7
+ })
8
+ .catch((err) => {
9
+ console.warn(`Could not start server: ${err.stack}`);
10
+ });
@@ -0,0 +1,40 @@
1
+ {
2
+ "private": true,
3
+ "name": "${packageName}",
4
+ "version": "0.2.0",
5
+ "description": "Server for ${browserTitle}",
6
+ "main": "lib/index.js",
7
+ "license": "UNLICENSED",
8
+ "scripts": {
9
+ "dev": "node ./lib/start-server.js",
10
+ "production": "set NODE_ENV=production&& node ./lib/start-server.js"
11
+ },
12
+ "directories": {
13
+ "lib": "lib"
14
+ },
15
+ "workspaces": [
16
+ "modules/*"
17
+ ],
18
+ "dependencies": {
19
+ "@dacore/admin": "^0.2",
20
+ "@dacore/auth": "^0.2",
21
+ "@dacore/browser-core": "^0.2",
22
+ "@dacore/core": "1.x",
23
+ "@dacore/core-editors": "^0.2",
24
+ "@dacore/coreviews": "^0.2",
25
+ "@dacore/core-ui": "^0.2",
26
+ "@dacore/dcterms": "^0.2",
27
+ "@dacore/forms": "^0.2",
28
+ "@dacore/html": "^0.2",
29
+ "@dacore/icons": "^0.2",
30
+ "@dacore/rdf4j": "^0.2",
31
+ "@dacore/server-core": "^0.2",
32
+ "@dacore/website": "^0.2",
33
+ "@dacore/website-editors": "^0.2",
34
+ "react": "^18.1",
35
+ "react-dom": "^18.1"
36
+ },
37
+ "devDependencies": {
38
+ "@dacore/build-tools": "1.x"
39
+ }
40
+ }
@@ -0,0 +1,117 @@
1
+ {
2
+ "@context": {
3
+ "owl": "http://www.w3.org/2002/07/owl#",
4
+ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
5
+ "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
6
+ "xsd": "http://www.w3.org/2001/XMLSchema#",
7
+ "core": "http://data.dacore.org/ontologies/core/",
8
+ "module": "http://data.dacore.org/ontologies/module/",
9
+ "storage": "http://data.dacore.org/ontologies/storage/",
10
+ "rdf4j": "http://data.dacore.org/ontologies/rdf4j/",
11
+ "node-core": "http://data.dacore.org/ontologies/node-core/",
12
+ "server-core": "http://data.dacore.org/ontologies/server-core/",
13
+ "browser-core": "http://data.dacore.org/ontologies/browser-core/"
14
+ },
15
+ "@graph": [
16
+ {
17
+ "@id": "dacore://store/main",
18
+ "@type": [
19
+ "rdf4j:RDF4JStore"
20
+ ],
21
+ "storage:publicEndPoint": [
22
+ {
23
+ "@value": "http://127.0.0.1:7200/repositories/${repositoryName}"
24
+ }
25
+ ]
26
+ },
27
+ {
28
+ "@id": "dacore://system",
29
+ "@type": "server-core:ServerCore",
30
+ "rdfs:label" : "${projectName}",
31
+ "server-core:serves": {
32
+ "@id": "${uriBase}"
33
+ },
34
+ "server-core:port": "${port}",
35
+ "core:uriBase": "${uriBase}",
36
+ "storage:defaultStore": {
37
+ "@id": "dacore://store/main"
38
+ },
39
+ "node-core:includeAtStartup": [
40
+ "@dacore/node-core",
41
+ "@dacore/rdf4j"
42
+ ],
43
+ "core:adminEmail": "${email}",
44
+ "core:deployment": "development",
45
+ "core:requiresSetup": {
46
+ "@type": "xsd:boolean",
47
+ "@value": "true"
48
+ },
49
+ "core:defaultModule": {
50
+ "@id": "${defaultModuleUri}"
51
+ },
52
+ "core:defaultOntology": {
53
+ "@id": "${defaultOntologyUri}"
54
+ },
55
+ "module:maintainsModule": [
56
+ {
57
+ "@id": "${defaultModuleUri}"
58
+ }
59
+ ],
60
+ "module:installedModule": [
61
+ {
62
+ "@id": "http://data.dacore.org/module/auth"
63
+ },
64
+ {
65
+ "@id": "http://data.dacore.org/module/admin"
66
+ },
67
+ {
68
+ "@id": "http://data.dacore.org/module/browser-core"
69
+ },
70
+ {
71
+ "@id": "http://data.dacore.org/module/core-editors"
72
+ },
73
+ {
74
+ "@id": "http://data.dacore.org/module/core-ui"
75
+ },
76
+ {
77
+ "@id": "http://data.dacore.org/module/core"
78
+ },
79
+ {
80
+ "@id": "http://data.dacore.org/module/coreviews"
81
+ },
82
+ {
83
+ "@id": "http://data.dacore.org/module/dcterms"
84
+ },
85
+ {
86
+ "@id": "http://data.dacore.org/module/forms"
87
+ },
88
+ {
89
+ "@id": "http://data.dacore.org/module/html"
90
+ },
91
+ {
92
+ "@id": "http://data.dacore.org/module/icons"
93
+ },
94
+ {
95
+ "@id": "http://data.dacore.org/module/rdf4j"
96
+ },
97
+ {
98
+ "@id": "http://data.dacore.org/module/server-core"
99
+ },
100
+ {
101
+ "@id": "http://data.dacore.org/module/website"
102
+ },
103
+ {
104
+ "@id": "http://data.dacore.org/module/website-editors"
105
+ }
106
+ ]
107
+ },
108
+ {
109
+ "@id": "${uriBase}",
110
+ "@type": "browser-core:BrowserCore",
111
+ "core:uriBase": "${uriBase}",
112
+ "core:deployment": "development",
113
+ "browser-core:publicRoot": "${publicRoot}",
114
+ "browser-core:browserTitle": "${projectName}"
115
+ }
116
+ ]
117
+ }