geckoterm
v0.2.2
Published
Coin Gecko Terminal Open Source SDK
Downloads
92
Readme
CoinGecko Terminal / TS SDK
OpenAPI + TypeScript + Type Safe API
Summary
This package provides a type-safe SDK for interacting with the CoinGecko Terminal API. The main feature is a strongly typed API client generated using OpenAPI 3 specs. The repository is open source and hosted at In This GitHub Repository.
Check out the Changelog to see what changed in the latest releases.
Important Note: This SDK only Support ESM (ECMAScript Modules).
Quick Start
Install the SDK
You can install the CoinGecko Terminal SDK using Bun:
bun add geckoterm
Use the SDK
Here's an example of how to use the SDK to fetch the available networks:
import { getNetworks, setGeckotermAPIConfg } from 'geckoterm'
// Set the config for the client with the Base URL and API key
setGeckotermAPIConfg({
baseUrl: 'https://api.geckoterminal.com/api/v2',
// Replace with your API key / if you have one
headers: {
Authorization: `Bearer ${process.env.GECKOTERM_API_KEY}`,
},
})
// Use the internal method to call the API
const response = await getNetworks({
query: {
page: 1,
},
})
// Log the response
console.log('API response data:', response.data)
Install dependencies for Contributions
Prerequisites
Before running the SDK, ensure you have the following dependencies installed:
- Bun (optional, but recommended): Used for runtime and testing.
You can install the required dependencies as follows:
Install Bun (for testing primitives, not required for the SDK itself)
# Supported on macOS, Linux, and WSL
curl -fsSL https://bun.sh/install | bash
# Upgrade Bun occasionally
bun upgrade
Compile API Client
To generate the TypeScript client from the OpenAPI spec, run the following commands:
# Step 1: Install dependencies
bun install
# Step 2: Compile the API client
bun run compile:api
The compile:api
command performs the following steps:
- Uses the @hey-api/openapi-ts Generator CLI to generate the TypeScript API client from the OpenAPI 3 spec.
- Formats the generated code using Prettier.
How to make a release
For the Maintainer: Add NPM_TOKEN
to the GitHub Secrets.
- Open a Pull Request with your changes.
- Merge the PR into the
main
branch. - Checkout the
main
branch locally:git checkout main
- Pull the latest changes:
git pull
- Run the release command:
bun release: '' | alpha | beta -- --release-as minor | major
- Verify everything looks good (e.g., in
CHANGELOG.md
). - Follow the instructions provided by the release log.
- Done!
Summary
This SDK provides a type-safe interface for interacting with the CoinGecko Terminal API. It uses OpenAPI to generate a fully typed API client, making it easier to work with the API in TypeScript.
Check out the GitHub repository for more information.