Want to contribute? Fork me on Codeberg.org!
A proxy of the Tatoeba API with no CORS restrictions. https://jichan.org/api/tatoeba
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.
 
Elnu c7f6aa98a3
Create LICENSE
2 years ago
.gitignore Ignore nginx config file 2 years ago
LICENSE Create LICENSE 2 years ago
README.md Create README.md 2 years ago
ecosystem.config.js Add PM2 ecosystem file 2 years ago
index.js Add script 2 years ago
package-lock.json Downgrade to node-fetch v2, latest doesn't support require 2 years ago
package.json Downgrade to node-fetch v2, latest doesn't support require 2 years ago

README.md

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.