All Projects → ZolaApp → zola-api

ZolaApp / zola-api

Licence: BSD-3-Clause license
Zola’s API.

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to zola-api

ssocks
sSocks fork for windows support; original: https://sourceforge.net/projects/ssocks/
Stars: ✭ 141 (+513.04%)
Mutual labels:  relay
readme-in-static-site
💎 Transform and insert your GitHub readme in your static site.
Stars: ✭ 24 (+4.35%)
Mutual labels:  zola
ReSift
A state management library for data fetches in React
Stars: ✭ 39 (+69.57%)
Mutual labels:  relay
fullstack-typescript
A demo project of a full stack typescript application
Stars: ✭ 28 (+21.74%)
Mutual labels:  knex
express-objection-starter
an opinionated, production-ready, isomorphic express/knex/objection starter with centralized configuration
Stars: ✭ 19 (-17.39%)
Mutual labels:  knex
vscode-graphiql-explorer
Use GraphiQL + GraphiQL Explorer to build your GraphQL operations, right from inside of VSCode.
Stars: ✭ 35 (+52.17%)
Mutual labels:  relay
nestjs-objection
Objection module for NestJS
Stars: ✭ 24 (+4.35%)
Mutual labels:  knex
hermit zola
Minimal Zola theme for bloggers
Stars: ✭ 34 (+47.83%)
Mutual labels:  zola
NoPMsBot
https://telegram.dog/ShriMADhaBot
Stars: ✭ 127 (+452.17%)
Mutual labels:  relay
graphql-ts-client
Typescript DSL for GraphQL.
Stars: ✭ 124 (+439.13%)
Mutual labels:  relay
Three-Factor-Security-Door
What do you get when you mix a Raspberry Pi, a MySQL database, an RFID reader, an LCD touchscreen, a relay switch, an electronic door strike and a Twilio SMS account?
Stars: ✭ 49 (+113.04%)
Mutual labels:  relay
relay-core
Kubernetes-based execution engine
Stars: ✭ 15 (-34.78%)
Mutual labels:  relay
qweechat
Qt remote GUI for WeeChat.
Stars: ✭ 56 (+143.48%)
Mutual labels:  relay
apollo-federation-relay
A demo of Apollo Federation and global Node resolution
Stars: ✭ 44 (+91.3%)
Mutual labels:  relay
cookbook
VueJS + NodeJS Evergreen Cookbook
Stars: ✭ 440 (+1813.04%)
Mutual labels:  knex
srtrelay
SRT relay server for distributing media streams to multiple clients.
Stars: ✭ 81 (+252.17%)
Mutual labels:  relay
shrtn-it
A url shortener developed as a course completion project
Stars: ✭ 16 (-30.43%)
Mutual labels:  knex
back-boilerplate
A boilerplate for building RESTful APIs using Node.js, PostgreSQL, koa, knex, bookshelf.
Stars: ✭ 33 (+43.48%)
Mutual labels:  knex
theonionbox
Dashboard to monitor Tor node operations
Stars: ✭ 116 (+404.35%)
Mutual labels:  relay
graphql-client-example-server
A simple GraphQL server for powering examples of various GraphQL clients in various languages.
Stars: ✭ 34 (+47.83%)
Mutual labels:  relay

Zola Api

Zola Api is the source code for Zola’s api, https://api.zola.ink.

The API is a GraphQL API, the full schema and types definitions can be explored using graphiql.

Meta

Getting started

Copy the .env.dist file to .env and run:

$ npm install
$ npm run dev

✨Zola API running on port 3001. ✨

You can use a custom port using the PORT environment variable.

Docker environment

Zola-api comes with a docker environment. The environment is described in the docker-compose.yml file and reads environment variables from .env.

When using the docker environment, you can link to containers using their name on the docker network. Data directories are mounted as volumes to container in order to persist data if a container is stopped.

To bring up the docker environment, set your environment variables and run :

$ docker-compose up -d

Then you can connect to the node container and run the above commands to run zola-api dev scripts :

$ docker exec -it zola-api bash

Note that using the docker environment is not required and any postgres host can be specified in the environment variables

Authentication

Zola's API supports token based authentication. Some of the queries and mutations available in the schema require a proper token to be sent in order to work.

A header Authentication: Bearer ${token} is expected when running those operations, and an error will be returned if that token is missing.

CDN

Zola's API comes with a CDN used to distribute translations assets. This CDN is technically public, but a token is generated for each project and is required in the CDN endpoint URL.

The CDN endpoints are :

GET /cdn/:cdnToken/download #exports all keys for all locales in project formatted in JSON and forces download
GET /cdn/:cdnToken/:localeCode #exports all keys for a single locale formatted in JSON
GET /cdn/:cdnToken/locales #lists all locales available for project formatted in JSON

License

BSD-3 License. See LICENSE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].