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
OpenATBackend is a node server that has 2 API routes. For details see the documentation here
You will need some environment variables to make this run. Notably:
GitHubOAuthwith your GitHub Personal Access Token.
RecaptchaSecretwith your Google details here and then apply to the env var..
AlgoliaAppID- from a Algolia account
AlgoliaAPIKey- from the same Algolia account
OpenATIndexName=OPENAT- the name of the Algolia index you are pushing to
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.