Apibara is a tool to build serverless APIs that integrate web3 data and web2 services.
Apibara applications are made of two components: the Apibara Server and the client application. The server is responsible for all common tasks such as indexing on-chain events, exposing a GraphQL API, and providing monitoring metrics. The client application implements the application-specific business logic and communicates with the server through a gRPC stream.
Developers implement applications using the Apibara SDK, available in the following languages:
- Python
- Typescript: coming soon
Index events from Ethereum-like chains and StarkNet. The Apibara Server listens for events on-chain and sends them to the registered indexers. The server handles all logic to fetch events and handle chain reorganizations, while the clients focus on the business logic.
Provide a document storage interface that indexers use to store their data. Data is automatically deleted in response to a chain reorganization.
Applications can declaratively define the resources they wish to expose. Apibara Server automatically creates the GraphQL API to serve them.
Support GraphQL subscriptions so that clients can stream resources as they are stored in the database.
Copyright 2022 GNC Labs Limited
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.