arena
Cloud-based platform for storing and processing data collected in field inventories or questionnaires
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.4%) to scientific vocabulary
Keywords
Repository
Cloud-based platform for storing and processing data collected in field inventories or questionnaires
Basic Info
- Host: GitHub
- Owner: openforis
- License: mit
- Language: JavaScript
- Default Branch: master
- Homepage: https://www.openforis-arena.org
- Size: 23.2 MB
Statistics
- Stars: 20
- Watchers: 7
- Forks: 7
- Open Issues: 171
- Releases: 0
Topics
Metadata Files
README.md
Quick reference
Maintained by:
Open Foris InitiativeDocumentation:
Open Foris Arena WebsiteOnline platform:
Open Foris ArenaWhere to get help:
Open Foris Support Forum
What is Arena?
Arena is a cloud-based platform for storing and processing data collected in field inventories or questionnaires. It provides a fast and flexible way to set up a survey and start entering data for a team. It offers tools for data quality assurance with the help of data validation and reporting methods. Arena also offers multilingual data entry forms, multi-cycle data management, and computing of new result attributes and running statistical analysis with integrated connection to RStudio Server or local installation of RStudio.
Arena also offers a map with access to very-high resolution satellite images. The Arena Map can be used, for example, for verifying locations of collected data, and for conducting sample-based image interpretation.

Installation
Prerequisites
download and install Docker. Docker is an open platform for developing, shipping, and running applications.
Install a local database (PostgreSQL) as a Docker container. Run this command from command line; it will create also a database named 'arena' and a user 'arena' with password 'arena' and will make the DBMS listen on port 5444 (you can change those parameters as you wish):
console
$ docker run -d --name arena-db -p 5444:5432 -e POSTGRES_DB=arena -e POSTGRES_PASSWORD=arena -e POSTGRES_USER=arena postgis/postgis:12-3.0
You can also use an already existing PostgreSQL database installed in a different way and configure Arena to connect to it.
Prepare a file with the parameters to pass to Arena
The file (call it arena.env) must be a text file with this content:
```properties
Default web server port
ARENA_PORT=9090
DB
specify the connection parameters as a URL in the format
postgres://user:password@host:port/database
DATABASE_URL=postgres://arena:arena@localhost:5444/arena
or parameter by parameter
PGHOST=localhost PGPORT=5444 PGDATABASE=arena PGUSER=arena PGPASSWORD=arena
temporary uploaded files folder
TEMPFOLDER=/home/youruser/openforis/arena/upload
FILES STORAGE
(if both FILESTORAGEPATH and FILESTORAGEAWSS3BUCKET_NAME are not specified, files will be stored in DB)
FILES STORAGE (file system)
path of a folder in the file system used to store files
FILESTORAGEPATH=
FILES STORAGE (AWS S3 Bucket)
FILESTORAGEAWSS3BUCKET_NAME=
FILESTORAGEAWSS3BUCKET_REGION=
FILESTORAGEAWSACCESSKEY=
FILESTORAGEAWSSECRETACCESS_KEY=
email service; allowed values: sendgrid / office365
- sendgrid service, only SENDGRIDAPIKEY is required
- office365 service: EMAILAUTHUSER and EMAILAUTHPASSWORD are required
EMAILSERVICE=sendgrid SENDGRIDAPI_KEY= # get it from https://sendgrid.com/
EMAILAUTHUSER=
EMAILAUTHPASSWORD=
Optional: custom email transport options could be specified.
EMAILTRANSPORTOPTIONS=
e.g. (for MS office365 service) EMAILTRANSPORTOPTIONS={"host":"smtp.office365.com","port":"587","auth":{"user":"testuser@mydomain.org","pass":"yoursecretpassword"},"secure":true,"tls":{"ciphers":"SSLv3"}}
Analysis
ANALYSISOUTPUTDIR=/home/your_user/openforis/arena/analysis
Server
HTTP Session
Secret used to sign the session ID cookie
SESSIONIDCOOKIE_SECRET=my-cookie-secret-key
Set to true if http requests must be forwarded to https
USE_HTTPS=false
RStudio Server (not mandatory)
RSTUDIODOWNLOADSERVER_URL=
RSTUDIOSERVERURL=
RSTUDIOPROXYSERVER_URL=
RSTUDIOPOOLSERVER_URL=
RSTUDIOPOOLSERVICE_KEY=
reCAPTCHA
RECAPTCHA_ENABLED=false
reCAPTCHA v2 keys; to be specified if reCAPTCHA is enabled (get it from https://www.google.com/recaptcha/about/)
RECAPTCHASITEKEY=
RECAPTCHASECRETKEY=
MAP
Planet Lab Maps API key (get it from https://www.planet.com/markets/mapping/)
MAPAPIKEY_PLANET=
System Admin user email address
used to create default system admin user when DB is empty
and to send emails to the users
ADMIN_EMAIL=
Admin user password: used only when default system admin user is created the first time
it MUST BE DELETED after the first startup
ADMIN_PASSWORD= ```
Install and run Arena
Running the following command from command line will install Arena as a Docker container:
console
$ docker run --env-file ./arena.env --network="host" openforis/arena:latest
You can run this command in the same folder where you have defined the arena.env file or specify its path in the command, in the '--env-file' parameter. Arena will start on the port specified in the arena.env file (9090 by default). You can use the same command to start up Arena again once you stop it.
Open Arena in the browser
Once you started Arena with the previous command, you can open this address in your browser: http://localhost:9090
If the installation process was successful, the Arena login form should appear.
When Arena starts up the first time, a system admnistrator user is created using the parameters ADMINEMAIL and ADMINPASSWORD specified in the arena.env file, so you can use that email address and password to access Arena the first time. The password can be changed using the Change password function in Arena.
Run R Studio Server locally
To install RStudio Server as a Docker container run the following command (replace ANALYSISOUTPUTDIR with the value of the ANALYSISOUTPUTDIR environment variable):
console
$ docker run -d --name arena-rstudio --network=host -v ANALYSIS_OUTPUT_DIR:/home/rstudio -e DISABLE_AUTH=true rocker/rstudio
To restart RStudio server run
console
$ docker container restart arena-rstudio
Visit http://localhost:8787 in your browser to access the rStudio server instance.
License
Arena is MIT licensed.
Owner
- Name: Open Foris
- Login: openforis
- Kind: organization
- Email: openforisinitiative@gmail.com
- Location: Rome, Italy
- Website: http://www.openforis.org
- Repositories: 45
- Profile: https://github.com/openforis
Free open-source solutions for environmental monitoring
GitHub Events
Total
- Create event: 251
- Release event: 55
- Issues event: 192
- Watch event: 4
- Delete event: 190
- Issue comment event: 510
- Push event: 649
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 369
- Fork event: 1
Last Year
- Create event: 251
- Release event: 55
- Issues event: 192
- Watch event: 4
- Delete event: 190
- Issue comment event: 510
- Push event: 649
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 369
- Fork event: 1
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Stefano Ricci | 1****o | 2,234 |
| minotogna | m****a@g****m | 1,860 |
| ramirobg94 | r****4@g****m | 773 |
| fefrain | f****n | 704 |
| Stefano Giaccio | s****o@g****m | 404 |
| fefrain | f****n | 74 |
| Elias Kunnas | e****s@k****m | 72 |
| persas | d****s@g****m | 37 |
| Miró Sorja | p****g@m****m | 35 |
| Daniel Koch | d****h@h****i | 11 |
| Ramiro Blázquez González | r****z@M****l | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 365
- Total pull requests: 848
- Average time to close issues: about 1 month
- Average time to close pull requests: 4 days
- Total issue authors: 11
- Total pull request authors: 5
- Average comments per issue: 0.07
- Average comments per pull request: 0.91
- Merged pull requests: 740
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 141
- Pull requests: 449
- Average time to close issues: 7 days
- Average time to close pull requests: about 21 hours
- Issue authors: 8
- Pull request authors: 2
- Average comments per issue: 0.06
- Average comments per pull request: 0.9
- Merged pull requests: 399
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- laurivesa (189)
- SteRiccio (148)
- ramirobg94 (17)
- Falgoonee (3)
- minotogna (2)
- werzum (1)
- VishalSingh1996 (1)
- dfguerrerom (1)
- lordakarias (1)
- hillsonghimire (1)
- roks531 (1)
Pull Request Authors
- SteRiccio (829)
- persas (11)
- laurivesa (4)
- ramirobg94 (3)
- dfguerrerom (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 199
proxy.golang.org: github.com/openforis/arena
- Documentation: https://pkg.go.dev/github.com/openforis/arena#section-documentation
- License: mit
-
Latest release: v2.1.50+incompatible
published 6 months ago
Rankings
Dependencies
- actions/checkout v3 composite
- actions/setup-node v3 composite
- akhileshns/heroku-deploy v3.12.12 composite
- actions/checkout v3 composite
- actions/setup-node v3 composite
- akhileshns/heroku-deploy v3.12.12 composite
- docker/build-push-action v3 composite
- docker/login-action v2 composite
- docker/setup-buildx-action v2 composite
- actions/checkout v3 composite
- actions/setup-node v3 composite
- microsoft/playwright-github-action v1 composite
- postgis/postgis 12-3.0 docker
- node ${node_version} build
- mdillon/postgis 11
- node ${node_version} build
- rocker/rstudio 3.6.1 build
- of-arena-web latest
- node 18.12.1 build
- postgis/postgis 12-3.0
- @babel/cli ^7.18.9 development
- @babel/core ^7.18.9 development
- @babel/eslint-parser ^7.18.9 development
- @babel/helper-string-parser ^7.18.10 development
- @babel/plugin-proposal-object-rest-spread ^7.18.9 development
- @babel/plugin-syntax-dynamic-import ^7.8.3 development
- @babel/preset-env ^7.18.9 development
- @babel/preset-react ^7.18.6 development
- @babel/register ^7.18.9 development
- @babel/runtime-corejs3 ^7.18.9 development
- @pmmmwh/react-refresh-webpack-plugin ^0.5.10 development
- babel-loader ^8.2.5 development
- cache-loader ^4.1.0 development
- cross-env ^7.0.3 development
- css-loader ^6.7.1 development
- csv-load-sync ^2.3.1 development
- eslint ^8.20.0 development
- eslint-config-prettier ^8.5.0 development
- eslint-import-resolver-webpack ^0.13.2 development
- eslint-plugin-chai-friendly ^0.7.2 development
- eslint-plugin-import ^2.26.0 development
- eslint-plugin-jest ^26.6.0 development
- eslint-plugin-jest-playwright ^0.9.0 development
- eslint-plugin-jsdoc ^39.3.3 development
- eslint-plugin-jsx-a11y ^6.6.1 development
- eslint-plugin-mocha ^10.1.0 development
- eslint-plugin-prettier ^4.2.1 development
- eslint-plugin-react ^7.30.1 development
- eslint-plugin-react-hooks ^4.6.0 development
- git-revision-webpack-plugin ^5.0.0 development
- glob ^8.0.3 development
- html-replace-webpack-plugin ^2.6.0 development
- html-webpack-plugin ^5.5.0 development
- husky ^8.0.1 development
- jest ^27.4.3 development
- jest-cli ^27.4.3 development
- jest-playwright-preset ^1.7.2 development
- lint-staged ^13.0.3 development
- mini-css-extract-plugin ^2.6.1 development
- node-dev ^7.4.3 development
- node-sass ^8.0.0 development
- nodemon ^2.0.19 development
- npm-run-all ^4.1.5 development
- optimize-css-assets-webpack-plugin ^6.0.1 development
- playwright ^1.24.0 development
- prettier ^2.7.1 development
- react-refresh ^0.14.0 development
- rimraf ^3.0.2 development
- sass-loader ^13.2.0 development
- skeleton-loader ^2.0.0 development
- style-loader ^3.3.1 development
- uglifyjs-webpack-plugin ^2.2.0 development
- webpack ^5.74.0 development
- webpack-bundle-analyzer ^4.5.0 development
- webpack-cli ^4.10.0 development
- webpack-dev-server ^4.9.3 development
- webpack-node-externals ^3.0.0 development
- yarn-audit-fix ^9.3.2 development
- @date-io/date-fns ^2.16.0
- @emotion/react ^11.10.5
- @emotion/styled ^11.10.5
- @mui/material ^5.10.15
- @mui/x-data-grid ^5.17.20
- @mui/x-date-pickers ^5.0.14
- @openforis/arena-core ^0.0.128
- @openforis/arena-server ^0.1.22
- @sendgrid/mail ^7.7.0
- @shopify/draggable ^1.0.0-beta.8
- ace-builds ^1.8.1
- adm-zip ^0.5.9
- archiver ^5.3.1
- axios ^0.27.2
- bcryptjs ^2.4.3
- bignumber.js ^9.0.2
- bluebird ^3.7.2
- buffer ^6.0.3
- camelize ^1.0.0
- circle-to-polygon ^2.2.0
- classnames ^2.3.1
- cluster ^0.7.7
- codemirror ^5.65.5
- connect-pg-simple ^7.0.0
- csv ^6.2.0
- d3 ^7.6.1
- d3-interpolate-path ^2.2.3
- d3-tip ^0.9.1
- dotenv ^16.0.1
- express ^4.18.1
- express-session ^1.17.3
- file-loader ^6.2.0
- file-saver ^2.0.5
- i18next ^21.8.14
- is-valid-coordinates ^1.0.0
- json2csv ^5.0.7
- jsonwebtoken ^8.5.1
- jszip ^3.10.1
- jwk-to-pem ^2.0.5
- leaflet ^1.8.0
- leaflet-geometryutil ^0.10.1
- leaflet-side-by-side ^2.2.0
- leaflet.markercluster ^1.5.3
- lodash ^4.17.21
- log4js ^6.6.0
- marked ^4.0.18
- morgan ^1.10.0
- ncp ^2.0.0
- node-schedule ^2.1.0
- node-stream-zip ^1.15.0
- path ^0.12.7
- pg ^8.7.3
- pg-promise ^10.11.1
- pg-query-stream ^4.2.3
- proj4 ^2.8.0
- prop-types ^15.8.1
- r-script ^0.0.4
- ramda ^0.28.0
- react ^17.0.1
- react-ace ^10.1.0
- react-avatar-editor ^13.0.0
- react-dom ^17.0.1
- react-dropzone ^14.2.3
- react-google-recaptcha ^2.1.0
- react-grid-layout ^1.3.4
- react-i18next ^11.18.1
- react-leaflet ^4.0.1
- react-leaflet-markercluster ^3.0.0-rc1
- react-number-format ^4.9.3
- react-redux ^8.0.2
- react-router ^6.3.0
- react-router-dom ^6.3.0
- react-select ^5.4.0
- react-split ^2.0.14
- react-switch ^7.0.0
- react-tiny-popover ^7.1.0
- react-transition-group ^4.4.2
- react-vega ^7.6.0
- redux ^4.2.0
- redux-debounced ^0.5.0
- redux-thunk ^2.4.1
- shpjs ^4.0.4
- socket.io-client ^4.5.1
- supercluster ^7.1.5
- to-snake-case ^1.0.0
- use-supercluster ^0.4.0
- uuid ^8.3.2
- vega ^5.22.1
- vega-lite ^5.6.0
- xml-js ^1.6.11
- 1742 dependencies