Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/datacite/lupo
DataCite REST API
https://github.com/datacite/lupo
doi graphql jsonapi lupo rails-api ruby
Last synced: about 1 month ago
JSON representation
DataCite REST API
- Host: GitHub
- URL: https://github.com/datacite/lupo
- Owner: datacite
- License: mit
- Created: 2017-05-18T14:47:24.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-10-29T08:05:10.000Z (about 1 month ago)
- Last Synced: 2024-10-29T09:22:28.162Z (about 1 month ago)
- Topics: doi, graphql, jsonapi, lupo, rails-api, ruby
- Language: Ruby
- Homepage: https://api.datacite.org
- Size: 15.5 MB
- Stars: 11
- Watchers: 8
- Forks: 8
- Open Issues: 78
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - datacite/lupo - DataCite REST API (ruby)
README
# DataCite REST API
[![Identifier](https://img.shields.io/badge/doi-10.5438%2F8gb0--v673-fca709.svg)](https://doi.org/10.5438/8gb0-v673)
![Release](https://github.com/datacite/lupo/workflows/Release/badge.svg)
[![Maintainability](https://api.codeclimate.com/v1/badges/dddd95f9f6f354b7af93/maintainability)](https://codeclimate.com/github/datacite/lupo/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/dddd95f9f6f354b7af93/test_coverage)](https://codeclimate.com/github/datacite/lupo/test_coverage)Rails API application for managing DataCite providers, clients, prefixes and DOIs. The API usesthe [JSONAPI](http://jsonapi.org/) specification.
## Installation
Using Docker.
```bash
docker run -p 8065:80 datacite/lupo
```or
```bash
docker-compose up
```If you want to build the docker image locally (instead of pulling it from docker hub)
and use docker compose for development you can use
```bash
docker-compose -f docker-compose.yml -f docker-compose.local.yml
```You can now point your browser to `http://localhost:8065` and use the application. Some API endpoints require authentication.
## Development
For basic setup one can use the following:
```bash
bundle exec rake db:create
bundle exec rake db:schema:load
bundle exec rake db:seed:development:base
```All other seed options can be found using rake --tasks
We use Rspec for testing:
```bash
bundle exec rspec
```Note when using a fresh test database you will need to instantiate the test db with:
```bash
bundle exec rake db:create RAILS_ENV=test
```Note when accessing the console you will need to disable spring:
```bash
env DISABLE_SPRING=true bundle exec rails console
```Follow along via [Github Issues](https://github.com/datacite/lupo/issues).
### Note on Patches/Pull Requests
- Fork the project
- Write tests for your new feature or a test that reproduces a bug
- Implement your feature or make a bug fix
- Do not mess with Rakefile, version or history
- Commit, push and make a pull request. Bonus points for topical branches.## License
**Lupo** is released under the [MIT License](https://github.com/datacite/lupo/blob/master/LICENSE).