https://github.com/atlasoflivingaustralia/specieslist-webapp
Species lists and traits tool
https://github.com/atlasoflivingaustralia/specieslist-webapp
ala-product-traits ala-systems species
Last synced: about 1 month ago
JSON representation
Species lists and traits tool
- Host: GitHub
- URL: https://github.com/atlasoflivingaustralia/specieslist-webapp
- Owner: AtlasOfLivingAustralia
- License: mpl-2.0
- Created: 2014-07-09T08:44:35.000Z (almost 11 years ago)
- Default Branch: develop
- Last Pushed: 2025-03-12T00:32:41.000Z (3 months ago)
- Last Synced: 2025-04-01T13:11:56.685Z (3 months ago)
- Topics: ala-product-traits, ala-systems, species
- Language: Groovy
- Homepage: https://lists.ala.org.au
- Size: 11 MB
- Stars: 6
- Watchers: 8
- Forks: 22
- Open Issues: 65
-
Metadata Files:
- Readme: README.md
- Changelog: changelogs.txt
- License: LICENSE
Awesome Lists containing this project
README
# Species lists and traits [](https://travis-ci.org/AtlasOfLivingAustralia/specieslist-webapp)
This is a grails application for managing species lists. It supports:
* Upload of species profile data in CSV format
* UI for viewing and faceting species
* Supports any number of key/value pairs
* JSON services used by
* BIE - species pages (https://bie.ala.org.au)
* Biocache - indexing occurrences (https://biocache.ala.org.au)
* Supports single owner & multiple editors of a single list
* Lists can be tagged as:
* authoritative
* conservation
* sensitive
* Supports sensitive species lists
### Architecture* Grails web application
* MySQL database### Installation
There is an Ansible playbook for this application here [ala-install/ansible/species-list-standalone.yml](https://github.com/AtlasOfLivingAustralia/ala-install/blob/master/ansible/species-list-standalone.yml)
See example inventory
[ala-install/ansible/inventories/vagrant/species-list-vagrant](https://github.com/AtlasOfLivingAustralia/ala-install/tree/master/ansible/inventories/vagrant)### Setting up for development
This application only needs a running MySQL instance and the app itself.
There is a docker compose file that can be used to run a local MySQL instance.
To use, install docker and docker compose and run:```$xslt
docker-compose -f mysql.yml up
```This should setup a running MySQL instance and expose port 3306. This is for development purposes only.
Once the docker instance is running, the app can be started using```$xslt
grails run-app
```### Changelog
- **Version 5.2.1 **:
- improved the performance of rematching processing
- Fixed list csv downloads has duplicate columns
- Fixed the broken species list upload from spatial issue
- Replaced deprecated functions provided by AuthService plugin
- Grails 6 upgraded
- **Version 3.0**:
- Grails 3, Lucene 5 or above
- **Version 2.0**:
- upgraded to Grails 3
- **Version 1.0**:
- upgraded to asset pipeline and grails 2.5.6
- fixed unit and integration tests### Release
- **Version 5.2.1**:
Database change:
- rematch_Log table changed:
```
DROP TABLE IF EXISTS `rematch_log`;
CREATE TABLE `rematch_log` (
`id` bigint NOT NULL AUTO_INCREMENT,
`version` bigint NOT NULL,
`end_time` datetime(6) DEFAULT NULL,
`processing` varchar(255) NOT NULL,
`start_time` datetime(6) NOT NULL,
`by_whom` varchar(255) NOT NULL,
`status` varchar(255) DEFAULT NULL,
`latest_processing_time` datetime(6) NOT NULL,
`history` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
```After the database change, change 'dataSource.dbCreate=none' into local config file to speed up the application startup.