Skip to content

Commit a535f38

Browse files
authored
new release
Release v2.1.0
2 parents 499c8e5 + c19907c commit a535f38

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+606
-97
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.pre-commit-config.yaml

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,28 @@
11
exclude: '^static/[bootstrap|htmx]/'
2+
default_install_hook_types:
3+
- pre-commit
4+
- commit-msg
25
repos:
3-
- repo: https://github.com/pre-commit/pre-commit-hooks
6+
- repo: https://github.com/pre-commit/pre-commit-hooks
47
rev: v4.5.0
58
hooks:
6-
- id: check-yaml
7-
- id: end-of-file-fixer
8-
- id: trailing-whitespace
9-
- repo: https://github.com/psf/black
9+
- id: check-yaml
10+
- id: end-of-file-fixer
11+
- id: trailing-whitespace
12+
13+
- repo: https://github.com/psf/black
1014
rev: 24.1.1
1115
hooks:
12-
- id: black
16+
- id: black
17+
18+
- repo: https://github.com/compilerla/conventional-pre-commit
19+
rev: v4.0.0
20+
hooks:
21+
- id: conventional-pre-commit
22+
stages: [ commit-msg ]
23+
args: [
24+
"--force-scope",
25+
"--verbose",
26+
"--scopes",
27+
"entirety,entities,users,subscriptions,smartdatamodels,devices,semantics"
28+
]

README.md

Lines changed: 47 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,59 @@
11
# n5geh.tools.entirety
22

3+
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](LICENSE)
34
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org)
45
[![semantic-release](https://github.com/N5GEH/n5geh.tools.entirety/actions/workflows/semantic-release.yml/badge.svg)](https://github.com/N5GEH/n5geh.tools.entirety/actions/workflows/semantic-release.yml)
56

7+
Entirety is a web-based graphical user interface (GUI) meant to provide easy access to some of FIWARE's Generic Enablers (GE) without requiring deeper knowledge on their APIs: Context Brokers like [Orion](https://fiware-orion.readthedocs.io/en/master/) and the [IoT Agent JSON](https://github.com/telefonicaid/iotagent-json/tree/master).
8+
Entirety is python-based and relies on the [FIWARE Library for Python (FiLiP)](https://github.com/RWTH-EBC/FiLiP) for the communication with the GE APIs.
9+
10+
Entirety holds modules (as displayed on the left hand side of the GUI) providing features to perform CRUD (create, read, update, delete) operations to entities in the Context Broker, devices in the IoT Agent, and subscriptions / notifications to QuantumLeap or other applications. Furthermore, Entirety provides a graphical overview of the semantic relationships between entities in the Semantics module as well as a store for standardized data models that can be either created or imported from external sources, like the [Smart Data Models Program](https://smartdatamodels.org//) in the Data Models module.
11+
12+
This project is currently in the process of contribution to FIWARE by the [Institute for Energy Efficient Buildings and Indoor Climate of RWTH Aachen University](https://www.ebc.eonerc.rwth-aachen.de/cms/~dmzz/e-on-erc-ebc/?lidx=1). You can find more GEs in the [FIWARE catalogue](https://github.com/Fiware/catalogue/).
13+
14+
## Table of Contents
15+
16+
- [n5geh.tools.entirety](#n5gehtoolsentirety)
17+
- [Table of Contents](#table-of-contents)
18+
- [Built With](#built-with)
19+
- [Roadmap](#roadmap)
20+
- [User Guide](#user-guide)
21+
- [Deployment Guide](#deployment-guide)
22+
- [Contributing](#contributing)
23+
- [Development](#development)
24+
- [Prerequisites](#prerequisites)
25+
- [Installing dependencies](#installing-dependencies)
26+
- [create .env File](#create-env-file)
27+
- [Get started](#get-started)
28+
- [Required](#required)
29+
- [Optional](#optional)
30+
- [OIDC](#oidc)
31+
- [User and permissions model](#user-and-permissions-model)
32+
- [Changelog](#changelog)
33+
- [Contact](#contact)
34+
- [License](#license)
35+
- [Further project information](#further-project-information)
36+
- [Acknowledgments](#acknowledgments)
37+
638
## Built With
739

840
- Django 4.1
941
- Bootstrap 5.2
1042
- htmx 1.8.2
43+
- Python 3.8/3.9
1144

1245
## Roadmap
1346
Have a look at our [roadmap](./docs/ROADMAP.md) to see what features we plan to work on in the short and long run. We kindly invite you to participate in [discussions](https://github.com/N5GEH/n5geh.tools.entirety/discussions) about possible features as well.
14-
## Deployment
1547

16-
To deploy the application please refer to
17-
our [deployment guide](https://github.com/N5GEH/n5geh.tutorials.entirety_step_by_step)
48+
## User Guide
49+
50+
The [user guide](./docs/USERGUIDE.md) describes how the GUI works and guides you through the functionalities of Entirety.
51+
52+
## Deployment Guide
53+
54+
To deploy Entirety via docker, please, refer to our [deployment guide](https://github.com/N5GEH/n5geh.tutorials.entirety_step_by_step), that also gives an overview of the used environment variables.
55+
If you wish to deploy Entirety for development purposes on your local machine, you can follow the [development](#deployment) and [get started](#get-started) paragraphs.
56+
1857

1958
## Contributing
2059

@@ -49,7 +88,7 @@ pre-commit
4988
cp .env.EXAMPLE .env
5089
```
5190

52-
## Usage
91+
### Get started
5392

5493
Migrate Database
5594

@@ -118,7 +157,10 @@ See [changelog](./docs/CHANGELOG.md) for detailed overview of changes.
118157

119158
## License
120159

121-
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](LICENSE)
160+
Entirety is licensed under the GPLv3 license [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](LICENSE).
161+
162+
Furthermore, the authors want to make the following statement:
163+
>Please note that software derived as a result of modifying the source code of the software in order to fix a bug or incorporate enhancements IS considered a derivative work of the product. Software that merely uses or aggregates (i.e. links to) an otherwise unmodified version of existing software IS NOT considered a derivative work.
122164
123165
## Further project information
124166

app/Entirety/.env.EXAMPLE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ OIDC_TOKEN_ROLE_PATH="$.entirety.roles"
5050

5151
# FIWARE
5252
CB_URL=http://localhost:1026
53-
IOTA_URL="http://localhost:4041"
54-
QL_URL="http://localhost:8668"
53+
IOTA_URL=http://localhost:4041
54+
QL_URL=http://localhost:8668
5555

5656
# CSRF
5757
CSRF_TRUSTED_ORIGINS=[]

app/Entirety/devices/templates/devices/list.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
<a class="nav-link" data-bs-toggle="tab" href="#devices">Devices</a>
1313
</li>
1414
<li class="nav-item">
15-
<a class="nav-link active" data-bs-toggle="tab" href="#groups">Services Group</a>
15+
<a class="nav-link active" data-bs-toggle="tab" href="#groups">Service Groups</a>
1616
</li>
1717
{% else %}
1818
<li class="nav-item">
1919
<a class="nav-link active" data-bs-toggle="tab" href="#devices">Devices</a>
2020
</li>
2121
<li class="nav-item">
22-
<a class="nav-link" data-bs-toggle="tab" href="#groups">Services Group</a>
22+
<a class="nav-link" data-bs-toggle="tab" href="#groups">Service Groups</a>
2323
</li>
2424
{% endif %}
2525
</ul>
@@ -159,7 +159,7 @@ <h5 class="modal-title" id="deleteModalAdvLabel">Delete Device</h5>
159159
{% else %}
160160
<div class="tab-pane container fade" id="groups">
161161
{% endif %}
162-
<h3>Services Group</h3>
162+
<h3>Service Groups</h3>
163163
<form action="" method="GET">
164164
{% csrf_token %}
165165
<div class="row justify-content-center">
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from django.conf import settings
2+
3+
4+
def logo_filename(request):
5+
return {"logo_filename": settings.LOGO_FILENAME}

app/Entirety/entirety/settings.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ class Settings(BaseSettings):
157157
"django.template.context_processors.request",
158158
"django.contrib.auth.context_processors.auth",
159159
"django.contrib.messages.context_processors.messages",
160+
"entirety.context_processors.logo_filename",
160161
],
161162
},
162163
},
@@ -318,7 +319,7 @@ def secret_key_not_empty(cls, v) -> str:
318319
IOTA_URL: AnyUrl = Field(default="http://localhost:4041", alias="IOTA_URL")
319320

320321
# CSRF
321-
CSRF_TRUSTED_ORIGINS: list = Field(default=[], alias="CSRF_TRUSTED_ORIGINS ")
322+
CSRF_TRUSTED_ORIGINS: list = Field(default=[], alias="CSRF_TRUSTED_ORIGINS")
322323

323324
# Database
324325
# https://docs.djangoproject.com/en/4.0/ref/settings/#databases
@@ -377,6 +378,8 @@ def secret_key_not_empty(cls, v) -> str:
377378
OIDC_TOKEN_ROLE_PATH: str = Field(
378379
default="$.entirety.roles", alias="OIDC_TOKEN_ROLE_PATH"
379380
)
381+
else:
382+
LOCAL_AUTH_SIGNUP: bool = Field(default=False, alias="LOCAL_AUTH_SIGNUP")
380383

381384
# Internationalization
382385
# https://docs.djangoproject.com/en/4.0/topics/i18n/
@@ -390,6 +393,8 @@ def secret_key_not_empty(cls, v) -> str:
390393
default=os.path.join(BASE_DIR, "media/"), alias="MEDIA_ROOT"
391394
)
392395

396+
LOGO_FILENAME: str = Field(default="Entirety-logo.png", alias="LOGO_FILENAME")
397+
393398
TIME_ZONE: str = Field(default="Europe/Berlin", alias="TIME_ZONE")
394399

395400
COMPRESS_ENABLED: bool = Field(default=not DEBUG, alias="COMPRESS_ENABLED")

app/Entirety/entities/templates/entities/delete.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
{% block content %}
66
<form method="post" action="">
77
<div>
8+
{% csrf_token %}
89
{% include 'accordion.html' %}
910
<button class="btn btn-danger rounded-pill" type="submit">Delete</button>
1011
</div>

app/Entirety/entities/templates/entities/entity_list.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
</div>
2424
<div class="input-group-append">
2525
<button type="submit"
26-
class="btn btn bi-search rounded-pill bg-primary"
26+
class="btn btn bi-search rounded-pill bg-primary ms-2"
2727
data-bs-toggle="tooltip"
2828
title="Start Search"
2929
id="search-button"

0 commit comments

Comments
 (0)