diff --git a/README.md b/README.md index 851a326..269f02c 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,37 @@ -# GeoCam - *a web application enabling users to manage their camera traps data* +# ecoSecrets - _a web application enabling users to manage their camera traps data_ -*GeoCam* is an open-source web application that aims to facilitate biodiversity studies that - use autonomous data collection devices such as camera traps. +_ecoSecrets_ is an open-source web application that aims to facilitate biodiversity studies that +use autonomous data collection devices such as camera traps. This web-application is in development and offers several features that meet the needs - of biodiversity stakeholders: +of biodiversity stakeholders: + - project management: to delimit the studies according to their context - management of study sites: to identify spatial scope - device management: to specify technical characteristics of the tools used in the - field and their availability + field and their availability - deployment management: to characterize spatio-temporal limits of data acquisition - media management: to standardize and optimize the storage of collected data - media processing: to enable the addition of annotations to the raw data We would be delighted if you use it, or even contribute in its development. -A demo is available [here](https://demo.geocam.natural-solutions.eu). Don't hesitate to +A demo is available [here](https://demo.ecosecrets.natural-solutions.eu). Don't hesitate to try it out! User : admin ; password : password --- -**Documentation (in french for now)**: [GeoCam documentation](https://natural-solutions.gitlab.io/geonature/annotation/) +**Documentation (in french for now)**: [ecoSecrets documentation](https://natural-solutions.gitlab.io/geonature/annotation/) ---

- - - + + +

--- + ## Installation ### Prerequisite @@ -42,10 +44,10 @@ Replace the `X.Y.Z` mention by the name of the release you want to install. ``` cd -wget https://github.com/naturalsolutions/geocam/archive/refs/tags/X.Y.Z.zip +wget https://github.com/naturalsolutions/ecosecrets/archive/refs/tags/X.Y.Z.zip unzip X.Y.Z.zip rm X.Y.Z.zip -mv geocam-X.Y.Z geocam/ +mv ecosecrets-X.Y.Z ecosecrets/ ``` ### Settings @@ -53,12 +55,13 @@ mv geocam-X.Y.Z geocam/ Copy the `.env.sample` inside the docker directory to `.env`: ``` -cd geocam +cd ecosecrets cp docker/.env.sample docker/.env nano docker/.env ``` Edit freely this `.env` file to change credentials for instance. Here are the main parameters you usually want to modify: + - `ENV` : uncomment it to activate the production mode (only if your app has been configured with a domain name) - `DOMAIN` : localhost, an IP address or a domain name (according to your context) - `PROTOCOL` : modify it to "https" if you want to activate HTTPS @@ -79,7 +82,6 @@ In the current version (`0.1.1`), you can't modify the `APP_USER` and the `APP_P With the default settings, the app will run on `http://localhost:8889/` but the port of each service will be avaible to debug. This URL must be adapted to your context (depending on chosen protocol, domain and port). - ## Sample data (for testing only) Sample data can be generated by using the following command: @@ -90,14 +92,14 @@ Sample data can be generated by using the following command: ## Authentication -GeoCam uses [Keycloak](https://www.keycloak.org/) version 21.1.0 as authentication system. +ecoSecrets uses [Keycloak](https://www.keycloak.org/) version 21.1.0 as authentication system. A keycloak service is provided in the `docker-compose.yml` file. This also sets up the keycloak instance to create a new realm, add clients (frontend and -backend) and create an admin user (credentials: **admin** / **password**). +backend) and create an admin user (credentials: **admin** / **password**). For now, there is no right implemented in the app. This means that all users -have the same rights in GeoCam. +have the same rights in ecoSecrets. The admin user created above can log into the app and manage users via the administration console of keycloak ([http://localhost:8889/auth](http://localhost:8889/auth) by default). You can use your own keycloak instance if you wish, just change in the `.env` @@ -114,21 +116,22 @@ command: ./scripts/docker.sh exec api pytest tests --cov-report html:/home/app/src/htmlcov --cov=src ``` -The default config assumes that the backend is accessing the database through +The default config assumes that the backend is accessing the database through the docker network (via "db" adress) which prevents backend tests from being run locally (outside a container). ### API/backend documentation The openapi documentation accessible via swagger is available here: + ``` http://localhost:8889/api/v1/docs ``` -### GeoCam app documentation (in french for now) +### ecoSecrets app documentation (in french for now) -The documentation is generated with mkdocs and is exposed on port 8133 +The documentation is generated with mkdocs and is exposed on port 8133 to be able to work on it with automatic reloading. ``` @@ -143,7 +146,7 @@ We use 'black' and 'isort' for Python code-formatting, this is checked via a Git ## Licence -GeoCam +ecoSecrets Copyright (C) 2023 Natural Solutions This program is free software: you can redistribute it and/or modify @@ -153,9 +156,8 @@ the Free Software Foundation, either version 3 of the License, or This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with this program. If not, see . - +along with this program. If not, see . diff --git a/docker/.env.sample b/docker/.env.sample index 0b84edc..98e9fac 100644 --- a/docker/.env.sample +++ b/docker/.env.sample @@ -10,7 +10,7 @@ PROTOCOL=http # either http or https HTTP_HTTPS_PORT=8889 # either 80 or 443 CANONICAL_URL=${PROTOCOL}://${DOMAIN}:${HTTP_HTTPS_PORT} -# Login/password to log in into GeoCam +# Login/password to log in into ecoSecrets APP_USER=admin APP_PASSWORD=password diff --git a/docs/docs/index.md b/docs/docs/index.md index ac56a9c..27d28be 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -1,11 +1,11 @@ -# GeoCam +# ecoSecrets -## Bienvenue sur la documentation de GeoCam +## Bienvenue sur la documentation de ecoSecrets --- ## Introduction -GeoCam est un outil développé par Natural Solutions dans le but d'aider les acteurs de la biodiversité à exploiter le potentiel des pièges photographiques. Cet outil permet de faciliter la gestion et le traitement des données de biodiversité issues de ces pièges. +ecoSecrets est un outil développé par Natural Solutions dans le but d'aider les acteurs de la biodiversité à exploiter le potentiel des pièges photographiques. Cet outil permet de faciliter la gestion et le traitement des données de biodiversité issues de ces pièges. ![NS](./assets/logo_NS.jpg) diff --git a/docs/docs/technical_guide/keycloak.md b/docs/docs/technical_guide/keycloak.md index 6dee54f..1b3c7f6 100644 --- a/docs/docs/technical_guide/keycloak.md +++ b/docs/docs/technical_guide/keycloak.md @@ -1,8 +1,8 @@ # Keycloak -Keycloak est la technologie utilisée dans GeoCam pour **gérer les droits et les utilisateurs**. Vous pouvez retrouver plus d'informations sur cette technologie [ici](https://www.keycloak.org/guides#getting-started). +Keycloak est la technologie utilisée dans ecoSecrets pour **gérer les droits et les utilisateurs**. Vous pouvez retrouver plus d'informations sur cette technologie [ici](https://www.keycloak.org/guides#getting-started). -L'interface administrateur permet à aux utlilisateurs administrateurs de gérer l'ensemble des aspects relatifs à Keycloak. Elle est accessible sur : `/auth/admin/geonature-annotation/console/`. La connexion se fait avec les mêmes identifiants que ceux de l'application. +L'interface administrateur permet à aux utlilisateurs administrateurs de gérer l'ensemble des aspects relatifs à Keycloak. Elle est accessible sur : `/auth/admin/geonature-annotation/console/`. La connexion se fait avec les mêmes identifiants que ceux de l'application. Pour le moment, seule la gestion de l'authentification est implémentée dans l'application. Il n'est donc pas encore possible de donner des droits différents aux utilisateurs d'une instance. Cela signifie que tous les utilisateurs auront accès aux mêmes pages et pourront effectuer les mêmes opérations sur l'application. diff --git a/docs/docs/user/home.md b/docs/docs/user/home.md index db94310..0143cfa 100644 --- a/docs/docs/user/home.md +++ b/docs/docs/user/home.md @@ -1,4 +1,4 @@ -# Accueil de GeoCam +# Accueil de ecoSecrets La page d'accueil présente des informations générales sur l'instance : le nombre de sites et de dispositifs, le nombre d'observations effectuées et le nombre de médias importés.

@@ -8,4 +8,4 @@ La figure suivante présente l'ensemble des fonctionnalités accessible depuis l
![homepage](../assets/homepage.png) -
_Page d'accueil de GeoCam_
+
_Page d'accueil de ecoSecrets_
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index d2ff3bf..61c9c67 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -1,4 +1,4 @@ -site_name: GeoCam +site_name: ecoSecrets repo_name: geonature/annotaion repo_url: https://gitlab.com/natural-solutions/geonature/annotation @@ -46,7 +46,7 @@ nav: - Introduction: index.md - Guide utilisateur: - Structure de la donnée au sein de l'application: user/data.md - - Commencer avec GeoCam: user/start.md + - Commencer avec ecoSecrets: user/start.md - Page d'accueil: user/home.md - Les projets: user/project.md - Les sites: user/site.md diff --git a/frontend/public/assets/geocam-logo-icon.svg b/frontend/public/assets/ecosecrets-logo-icon.svg similarity index 100% rename from frontend/public/assets/geocam-logo-icon.svg rename to frontend/public/assets/ecosecrets-logo-icon.svg diff --git a/frontend/public/assets/ecosecrets_logo_full_light.svg b/frontend/public/assets/ecosecrets_logo_full_light.svg new file mode 100644 index 0000000..3e48b5a --- /dev/null +++ b/frontend/public/assets/ecosecrets_logo_full_light.svg @@ -0,0 +1,48 @@ + + \ No newline at end of file diff --git a/frontend/public/assets/geocam-logo-dark.png b/frontend/public/assets/geocam-logo-dark.png deleted file mode 100644 index ca63937..0000000 Binary files a/frontend/public/assets/geocam-logo-dark.png and /dev/null differ diff --git a/frontend/public/assets/geocam-logo-icon.png b/frontend/public/assets/geocam-logo-icon.png deleted file mode 100644 index 2e3805f..0000000 Binary files a/frontend/public/assets/geocam-logo-icon.png and /dev/null differ diff --git a/frontend/public/assets/geocam-logo-light.png b/frontend/public/assets/geocam-logo-light.png deleted file mode 100644 index d5a5ddd..0000000 Binary files a/frontend/public/assets/geocam-logo-light.png and /dev/null differ diff --git a/frontend/public/assets/geocam-logo.svg b/frontend/public/assets/geocam-logo.svg deleted file mode 100644 index ad14be5..0000000 --- a/frontend/public/assets/geocam-logo.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/public/index.html b/frontend/public/index.html index a38e114..5ff04ce 100644 --- a/frontend/public/index.html +++ b/frontend/public/index.html @@ -2,14 +2,14 @@ - + - + - GeoCam + ecoSecrets diff --git a/frontend/src/components/HeadBar.tsx b/frontend/src/components/HeadBar.tsx index 116b429..f87a749 100644 --- a/frontend/src/components/HeadBar.tsx +++ b/frontend/src/components/HeadBar.tsx @@ -51,7 +51,10 @@ const HeadBar = () => { diff --git a/keycloak/theme/customtheme/login/resources/css/styles.css b/keycloak/theme/customtheme/login/resources/css/styles.css index 5423381..22cb1d5 100644 --- a/keycloak/theme/customtheme/login/resources/css/styles.css +++ b/keycloak/theme/customtheme/login/resources/css/styles.css @@ -1,39 +1,43 @@ body { - background-image: url('../img/background.png') !important; - background-repeat: no-repeat !important; - background-size: cover !important; - background-position: bottom !important; + background-image: url("../img/background.png") !important; + background-repeat: no-repeat !important; + background-size: cover !important; + background-position: bottom !important; } -#geocamlogo { - max-width: 200px; - height: auto; +#ecosecretslogo { + max-width: 200px; + height: auto; } -.card-pf{ - border-radius: 25px; - border-top: none; - box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.12), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.20); +.card-pf { + border-radius: 25px; + border-top: none; + box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.12), + 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.2); } -#username:focus, #password:focus, #username:hover, #password:hover { - border-bottom-color: #2FA37C; +#username:focus, +#password:focus, +#username:hover, +#password:hover { + border-bottom-color: #2fa37c; } -#username, #password { - background-color: #FFFFFF; - outline: none !important; - box-shadow: none !important; - border-left: none; - border-top: none; - border-right: none; +#username, +#password { + background-color: #ffffff; + outline: none !important; + box-shadow: none !important; + border-left: none; + border-top: none; + border-right: none; } - #kc-form-buttons input { - border-radius: 50px; - background: #2FA37C; - width: fit-content; - padding: 8px 32px; - margin: 0 auto; -} \ No newline at end of file + border-radius: 50px; + background: #2fa37c; + width: fit-content; + padding: 8px 32px; + margin: 0 auto; +} diff --git a/keycloak/theme/customtheme/login/resources/img/logo.png b/keycloak/theme/customtheme/login/resources/img/logo.png index 3b5498e..7626ac1 100644 Binary files a/keycloak/theme/customtheme/login/resources/img/logo.png and b/keycloak/theme/customtheme/login/resources/img/logo.png differ diff --git a/keycloak/theme/customtheme/login/template.ftl b/keycloak/theme/customtheme/login/template.ftl index acb2b9c..467902f 100644 --- a/keycloak/theme/customtheme/login/template.ftl +++ b/keycloak/theme/customtheme/login/template.ftl @@ -12,7 +12,7 @@ - GeoCam + ecoSecrets <#if properties.stylesCommon?has_content> <#list properties.stylesCommon?split(' ') as style> @@ -40,7 +40,7 @@
+ class="${properties.kcHeaderWrapperClass!}">