Want to contribute? Fork me on Codeberg.org!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

1.7 KiB

tatoeba-api

A proxy of the Tatoeba API with no CORS restrictions.

The only Tatoeba API currently has an issue where it's CORS policy blocks it from being used by JavaScript in the browser. This is a mirror of the Tatoeba API that has Access-Control-Allow-Origin: * set to circumvent this issue. I am hosting this at tatoeba.elnu.com until Tatoeba has a proper API implementation.

Usage

For information about API usage, see the official documentation.

This API mirror is a mirror of https://tatoeba.org/eng/api_v0/search. So, for example, https://tatoeba.org/en/api_v0/search?query=dog can be rewritten to https://tatoeba.elnu.com/?query=dog if you are using the version of the API I am hosting. For self-hosting, see Self-hosting.

Self-hosting

tatoeba-api requires Node.js and npm.

Install the depenedencies:

npm i

Running

Run tatoeba-api at port 3000 (the default):

node index.js

Run tatoeba-api at port 5000:

node index.js 5000

Running as background process

tatoeba-api can be easily run as a background process using pm2.

Install pm2:

npm i pm2 -g

The configuration for pm2 is stored in ecosystem.config.js, which by default sets it to run at port 5000 instead of 3000. To change the port, open this file and change the args field.

Start process:

pm2 start

For running starting the API at boot and more, see the pm2 documentation.