From c3a6254829905b4d13f917eaff35efe860681726 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=81ukasz=20=C5=81opatowski?=
 <llopat@users.noreply.github.com>
Date: Tue, 19 Sep 2023 18:55:24 +0200
Subject: [PATCH] Updated README.md content

---
 README.md                        |  34 +++++++++++++++++++++++++++++++
 readme.md => docs/DEVELOPMENT.md |  28 ++++++++++++-------------
 docs/nmaas-logo-blue.png         | Bin 0 -> 5272 bytes
 docs/nmaas-logo-white.png        | Bin 0 -> 6016 bytes
 4 files changed, 47 insertions(+), 15 deletions(-)
 create mode 100644 README.md
 rename readme.md => docs/DEVELOPMENT.md (68%)
 create mode 100644 docs/nmaas-logo-blue.png
 create mode 100644 docs/nmaas-logo-white.png

diff --git a/README.md b/README.md
new file mode 100644
index 00000000..b02362a6
--- /dev/null
+++ b/README.md
@@ -0,0 +1,34 @@
+<div align="center">
+  <a href="https://docs.nmaas.eu/">
+    <img src="docs/nmaas-logo-blue.png" alt="Logo" width="206" height="48">
+  </a>
+
+<h3 align="center">NMaaS Platform</h3>
+
+<h4 align="center">Open-source multi-tenant platform for effortless, orchestrated deployment of software tools and applications on top of Kubernetes</h4>
+
+  <p align="center">
+    <br />
+    <a href="https://docs.nmaas.eu/">Explore documentation</a>
+    ·
+    <a href="https://github.com/nmaas-platform/nmaas-platform/issues">Report Bug</a>
+    ·
+    <a href="https://github.com/nmaas-platform/nmaas-platform/issues">Request Feature</a>
+  </p>
+</div>
+
+## NMaaS Portal Component
+
+[NMaaS Portal](https://github.com/nmaas-platform/nmaas-portal) represents the front-end application of NMaaS that consumes the REST API offered by NMaaS Platform. NMaaS Portal is a Angular based application that is run in user's browser.
+
+### NMaaS Portal Development
+
+Explore the NMaaS Portal [development and deployment](docs/DEVELOPMENT.md) documentation.
+
+## Get in Touch
+
+Interested users can use the following mailing lists to subscribe to news about NMaaS, get in touch with the NMaaS development team, or other NMaaS users:
+
+- [nmaas-announce@lists.geant.org](mailto:nmaas-announce@lists.geant.org) - public mailing list for announcements shared by the NMaaS team with the community ([subscribe here](https://lists.geant.org/sympa/info/nmaas-announce))
+- [nmaas@lists.geant.org](mailto:nmaas@lists.geant.org) - private mailing list for contacting the NMaaS core team members
+- [nmaas-users@lists.geant.org](mailto:nmaas-users@lists.geant.org) - public mailing lists for discussions related to NMaaS usage and development ([subscribe here](https://lists.geant.org/sympa/info/nmaas-users))
diff --git a/readme.md b/docs/DEVELOPMENT.md
similarity index 68%
rename from readme.md
rename to docs/DEVELOPMENT.md
index 0d7c42c8..8ec5de72 100644
--- a/readme.md
+++ b/docs/DEVELOPMENT.md
@@ -1,7 +1,5 @@
 # NMaaS Portal (GUI)
 
-### Web-based GUI for browsing, subscription and deployment of applications offered by the NMaaS Platform
-
 ### Technologies
 ---
 
@@ -15,11 +13,11 @@ See `package.json` for detailed package list.
 
 ### Prerequisites
 ---
- + Install node and npm (min version is node v14, but suggested is v16)
- + Install git
- + Clone project and run `npm install` in project *root* directory
- + (running on server) Build project using `ng build` and deploy using http server of your choice
- + (running tests) Chrome is required for running tests, however `karma-chrome-launcher` should download Chrome automatically if it is not detected. Run test using `npm test` or `npm test-headless`. See `package.json` for detailed test commands.
++ Install node and npm (min version is node v14, but suggested is v16)
++ Install git
++ Clone project and run `npm install` in project *root* directory
++ (running on server) Build project using `ng build` and deploy using http server of your choice
++ (running tests) Chrome is required for running tests, however `karma-chrome-launcher` should download Chrome automatically if it is not detected. Run test using `npm test` or `npm test-headless`. See `package.json` for detailed test commands.
 
 ### Running NMaaS Portal locally
 ---
@@ -30,17 +28,17 @@ Note: First run requires entering `npm install` command in order to install all
 
 ### Running NMaaS Portal on dedicated machine
 ---
-  In order to run NMaaS Portal on dedicated machine perform the following steps:
-  + Build the NMaaS Portal by running `gradlew clean build` in the reactor directory.
-    - In order to build for production environment use additional option `--configuration production`
-  + The output archive `nmaas-portal-x.x.x.zip` file is created in `nmaas-portal/build/distributions` directory.
-  + Run the http server in `nmaas-portal/build/app`
-    - `nohup angular-http-server -p 9009 -s --cors > nmaas-portal.log 2> Error.err < /dev/null &`
+In order to run NMaaS Portal on dedicated machine perform the following steps:
++ Build the NMaaS Portal by running `gradlew clean build` in the reactor directory.
+  - In order to build for production environment use additional option `--configuration production`
++ The output archive `nmaas-portal-x.x.x.zip` file is created in `nmaas-portal/build/distributions` directory.
++ Run the http server in `nmaas-portal/build/app`
+  - `nohup angular-http-server -p 9009 -s --cors > nmaas-portal.log 2> Error.err < /dev/null &`
 
 ### Lunching tests
 ---
 Run `./gradlew run testCoverage` in this directory.
-Results of executed tests are displayed on screen. 
+Results of executed tests are displayed on screen.
 More information about code quality (including code coverage, test status) are available in `nmaas-portal/coverage/index.html`
 
 ### Default settings
@@ -52,7 +50,7 @@ NMaaS Portal and Platform URLs:
 Admin user:
 + username: `admin`
 + password: `admin`
-    
+
 ### Building and uploading NMaaS Portal Docker image
 ---
 In order to build the NMaaS Portal Docker image first alter the `build_and_publish.sh` script with custom REPOSITORY, PACKAGE and TAG values and execute `build_and_publish.sh` to automatically build and publish `nmaas-portal` image to selected Docker repository.
diff --git a/docs/nmaas-logo-blue.png b/docs/nmaas-logo-blue.png
new file mode 100644
index 0000000000000000000000000000000000000000..2ab81d686b5da7b544f7f93da742ab393ac50fa4
GIT binary patch
literal 5272
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
Lu6{1-oD!M<Z(Ghl

literal 0
HcmV?d00001

diff --git a/docs/nmaas-logo-white.png b/docs/nmaas-logo-white.png
new file mode 100644
index 0000000000000000000000000000000000000000..3226b4d55678026b0e8ee044d2f3a8c9f5f9745b
GIT binary patch
literal 6016
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
Ab^rhX

literal 0
HcmV?d00001

-- 
GitLab