Coder Social home page Coder Social logo

jams-server's Introduction

JAMS Ingestion Server

Nobody used this, so I archived it. If you would like to use it and take ownership of it, let me know.

This is a small Node.js server that exposes a CR (as in CRUD) RESTful API for generic JAMS data, backed by MongoDB. It could (and should) be extended to provide read and update features specific to the JAMS format so that it can be deployed as a generic server for a wide variety of musicological data storage, however at the moment it's streamlined for my specific research into velocity aware trajectorial playlisting.

Usage

Install the server with npm install -g jams-server. Set the environmental variables "JAMS_MONGO_URI" to point at your mongodb instance, and "JAMS_PORT" to specify the port your jams server should run on. Run jams-server to spin up a service.

API Documentation

  • GET $SERVER/jams/:id
    • Returns the specific JAMS file for the specified identifier
  • PUT $SERVER/jams
    • Accepts JAMS formatted JSON and inserts it into the database, returns an identifier
  • GET $SERVER/jams
    • Returns a list of jams files

jams-server's People

Contributors

greenkeeper[bot] avatar hughrawlinson avatar

Watchers

 avatar  avatar  avatar

jams-server's Issues

Switching to Swagger

Should be considered.

Swagger would provide a UI for browsing data, and generally potentially make things easier. Discuss.

Searching and interesting querying

We should add searches on the file-metadata parameters, and query filtering on other JAMS Annotations? This is a super big problem though, would require Much Thought and Care ✨

Opinions very much appreciated, please do chime in.

Digest portion of the API

Currently the API only accepts JAMS files, and doesn't provide an interface for querying by ID or listing. This is a quick and easy fix.

An in-range update of hapi is breaking the build 🚨

Version 17.5.0 of hapi was just published.

Branch Build failing 🚨
Dependency hapi
Current Version 17.4.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

hapi is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build failed Details

Commits

The new version differs by 11 commits.

  • 4c140fb 17.5.0
  • ea4e8fe 17.5.0
  • a05adf4 Revent
  • e226650 Merge branch 'master' of github.com:hapijs/hapi
  • ae526ec 17.5.0
  • f41fa78 Merge pull request #3791 from cjihrig/symbol
  • bb657dd Fix log channels
  • 574d768 Update SPONSORS.md
  • 178016c support symbol properties in server.decorate()
  • 3e58865 Merge pull request #3788 from mannypamintuan/documentation-update
  • 16bcc1f Updated Example, correct link, update outdated text in API.md

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Should expose CLI interface

$ npm install -g jams-server
$ jams-server -p 40000 --mongo-connect-string mongodb://mongo:[email protected]:27017/mongo

should work.

If a port or connect string isn't specified, it should probably fall back to an environmental variable (so that deployments that for whatever reason have public logs will be safe from people connecting to their mongo instances), then to a default value (for port) or an error + exit (for missing mongo uri).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.