openassistive / OpenATBackend

Back end api for Open Assistive built using nodeJS.
https://api.openassistive.org
4 stars 1 forks source link
algolia api assistive-technology jamstack swagger

OpenATBackend

Swagger API Documentation

Open Assistive (Technology) - What is it?

Its a site to collate all Open source Hardware and Software projects from around the web that aim to help someone with disabilities (i.e. Assistive Technology). The site (will be) a static site hosted by GitHub pages. Its dynamically generated by http://gohugo.io. The full site can be found at https://github.com/openassistive/OpenATFrontEnd

On the site a user can add a new project by adding a project from say Thingiverse, Sourceforge, Github or others. This API is then called that scrapes the site for the important meta-data and with "save" can then save the data to the GitHub repo for the front-end. Travis will then rebuild the site (or project maintainers will manually build the site daily).

Why this way? Well because we want to create a sustainable, low-cost and easy to manage system. We think this is one of the easiest - and most reliable "stacks" to do this! Its a bit of an experiment

Details

OpenATBackend is a node server that has 2 API routes. For details see the documentation here

To run

You will need some environment variables to make this run. Notably:

and to test simply set this env var:

I recommend using direnv for this task. It makes setting env vars between projects much easier. Otherwise use a script a bit like this:

    #!/bin/sh

    export GitHubOAuth=<key>
    export RecaptchaSecret=<secret>
    export AlgoliaAppID=<id>
    export AlgoliaAPIKey=<key>
    export OpenATIndexName=OPENAT
    export TEST_MODE=1

e.g. in your terminal:

git clone https://github.com/openassistive/OpenATBackend.git
npm install
node server.js 

then navigate to http://localhost:5000 to access the server.

To Deploy

Deploy