Skip to content

GPlates/gplates-web-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPlates Web Service

Test Build Docker Release Test

The 🔥GPlates Web Service🔥 is a part of the on-going GPlates project funded by AuScope. The web service is built upon pygplates and allows users to utilize the pygplates functionalities without installing pygplates locally. Users send HTTP requests to https://gws.gplates.org or the local dockerized server, and the server will process the requests and send the reconstruction results back. The web service enables pygplates functionalities in any programming languange and on any operating system.

The GPlates Web Service is created and maintained by EarthByte group at the University of Sydney.

🤔Why use GPlates Web Service

  • cross-platform and language-independent -- the service can be used in any programming languange and on any operating system
  • scalability -- offload workload to servers, cluster, grid or Cloud to improve performance and support more concurrent users
  • automated plate model management -- provide plenty plate models out of the box
  • easy software deployment and upgrade -- avoid the hassle of software installation and upgrade

🚀Quick start

👉 Use the GPlates Web Service in a web browser

{"type": "MultiPoint", "coordinates": [[62.6938, 58.8486], [126.7291, -61.6615]]}

The GPlates Web Service server returns a valid GeoJSON MultiPoint geometry that contains the paleo-coordinates of two present-day locations at 140Ma. The paleo-coordinates were calculated according to the plate reconstruction model Muller2019.

👉 Use curl or wget

  • wget -qO - "https://gws.gplates.org/reconstruct/reconstruct_points/?lons=95,142&lats=54,-33&time=140&model=MULLER2019"
  • curl "https://gws.gplates.org/reconstruct/reconstruct_points/?lons=95,142&lats=54,-33&time=140&model=MULLER2019"

👉 Use GPlates Web Service Python Client/Proxy

See the examples at https://github.com/michaelchin/gplates-python-proxy/blob/main/README.md

👉 Setup your own server

📌For better performance and data security, you may want to setup your own servers.

Start your own GWS server may be as simple as docker run -d --rm -p 18000:80 gplates/gws.

See docker/README.md for the step-by-step instructions.

📂Contents

  • django -- folder contains source code files for backend services (using django framework).

  • docker -- folder contains files for building Docker image

  • doc -- documentation website. This doc website is built upon gatsby-gitbook-starter.

  • examples -- some examples to show how to use this web service

  • test -- code for testing this web service

  • examples of accessing the service from different languages (R,matlab,bash/GMT,python) have now been moved to https://github.com/siwill22/gws-examples

🐳Docker

click 👉here👈 to see details about using Docker in development and production environment.

📚Documentation

Go to GWS documentation website

The Swagger UI is at https://gws.gplates.org/swagger-ui/

The OpenAPI schema is at https://gws.gplates.org/openapi

📮Contact

👉 Contact EarthByte

📝License

The GPlates Web Service is free software (also known as open-source software), licensed for distribution under the GNU General Public License (GPL), version 2. Contact Earthbyte group about the details of the software licensing.

Servers