diff --git a/docs/source/developer/index.rst b/docs/source/developer/index.rst
index 932bf4a2b..0b126c439 100644
--- a/docs/source/developer/index.rst
+++ b/docs/source/developer/index.rst
@@ -3,9 +3,9 @@ Developer Guide
To start using the MapStore geOrchestra project as a developer you need the following:
* install the needed requirements:
- * NodeJS (>=8)
- * JDK (>= 8)
- * Maven (>= 3.x)
+ * NodeJS (>=16)
+ * JDK (>= 11)
+ * Maven (>= 3.6)
* clone the GitHub repository:
@@ -66,9 +66,48 @@ To deploy your local backend you will need to:
* properly change the configuration files, in particular to set the database and LDAP repository connection settings
-If you don't have a local database and LDAP repository properly configured for geOrchestra you can use remote ones.
+If you don't have a local database and LDAP repository properly configured for geOrchestra you can use remote ones,
+by configuring their access in ``web/src/main/resources/mapstore.properties``
+
Remember: to use a local backend both a PostgreSQL database and LDAP repository needs to be available and properly populated.
+If you dont want to have a PostgreSQL database, you can fallback to h2 using this diff:
+
+.. code-block:: diff
+ :caption: web/src/main/resources/applicationContext.xml.diff
+ @@ -127,15 +127,8 @@
+
+
+
+ -
+ -
+ -
+ -
+ -
+ -
+ -
+ -
+ -
+ +
+ +
+
+
+ @@ -155,7 +148,7 @@
+
+
+
+ -
+ +
+
+
+
+
+running the local backend with ``npm run backend:dev`` will create a new ``test.h2.db`` database in the tomcat root.
+
+if you start the local backend outside of an existing tomcat instance, you should also set the ``georchestra.datadir``
+property in the ``properties`` `section of web/pom.xml `_, pointing at the full path of your local datadir.
+
Developing the frontend
-----------------------
@@ -80,6 +119,23 @@ To start the frontend locally, just run:
Your application will be available at http://localhost:8081
+If developing remotely, you can tell webpack to serve the files at a given hostname/ip, eg in `package.json `_:
+
+.. code-block:: diff
+ :caption: package.json.diff
+
+ - "start": "webpack serve --progress --color --port 8081 --hot --inline --content-base .",
+ + "start": "webpack serve --progress --color --public my.georchestra.org --host 0.0.0.0 --port 8081 --hot --inline --content-base .",
+
+will make it available at http://my.georchestra.org:8081
+
+When doing modifications on the frontend code, ``webpack`` will automatically
+rebundle the source and reload the page, no need to do that manually.
+
+The only way to get *unminified* javascript debugguable via the browser console is to use ``npm start`` which uses the `debug configuration for webpack `_.
+
+The `production configuration `_ minimises the javascript.
+
Mocking security
----------------
@@ -143,3 +199,19 @@ Next, to change the default theme you have to open the ``localConfig.json`` and
}
}
}
+
+Managing the branches
+---------------------
+
+When developing a feature or upgrading a local installation, one often switches branches from ``master`` to other stable branches.
+
+in all cases, it is **strongly** advised to run the following when switching branches:
+
+ .. code-block:: shell
+
+ git checkout
+ git submodule update
+ rm -Rf package-lock.json node_modules/ MapStore2/node_modules # clean up
+ npm install
+
+otherwise you might run into conflicts between various version of the javascript libraries