1.0.3 โ€ข Published 4 months ago

dexscreener-sdk v1.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

DEX Screener SDK

npm version License: MIT TypeScript

A powerful TypeScript SDK for the DEX Screener API, providing seamless access to cryptocurrency token data, market analytics, and trading pairs across multiple blockchains.

๐Ÿš€ Features

  • Full API Coverage: Access all DEX Screener endpoints
  • Type Safety: Built with TypeScript for enhanced developer experience
  • Modular Design: Clean architecture with separate modules for different API functionalities
  • Comprehensive Models: Well-documented data models for all API responses
  • Error Handling: Robust error handling and type checking
  • Promise-based: Modern async/await support
  • Zero Dependencies: Only uses axios for HTTP requests

๐Ÿ“ฆ Installation

npm install dexscreener-sdk
# or
yarn add dexscreener-sdk

๐Ÿ”ง Usage

Token Profiles

import { getLatestTokenProfiles } from "dexscreener-sdk";

// Fetch latest token profiles
const profiles = await getLatestTokenProfiles();
console.log(profiles);

Token Boosts

import {
    getLatestTokenBoosts,
    getTopTokenBoosts,
} from "dexscreener-sdk";

// Get latest token boosts
const latestBoosts = await getLatestTokenBoosts();

// Get top boosted tokens
const topBoosts = await getTopTokenBoosts();

Trading Pairs

import { getPairById, searchPairs } from "dexscreener-sdk";

// Get specific pair
const pair = await getPairById("solana", "pairAddress");

// Search for pairs
const searchResults = await searchPairs("SOL/USDC");

๐Ÿ“š API Reference

Token Endpoints

  • getLatestTokenProfiles(): Fetch latest token profiles
  • getLatestTokenBoosts(): Get recently boosted tokens
  • getTopTokenBoosts(): Get tokens with most active boosts
  • getOrdersForToken(chainId, tokenAddress): Fetch token orders

Pair Endpoints

  • getPairById(chainId, pairId): Get specific trading pair
  • searchPairs(query): Search for trading pairs
  • getTokenPools(chainId, tokenAddress): Get liquidity pools for token
  • getPairsByTokenAddresses(chainId, tokenAddresses): Get pairs for multiple tokens

๐Ÿ”„ Response Types

All responses are properly typed with TypeScript interfaces:

interface TokenProfile {
    url: string;
    chainId: string;
    tokenAddress: string;
    icon: string;
    header: string;
    description: string;
    links: ILink[];
    // ... more properties
}

โš™๏ธ Configuration

The base URL is configurable through the config.ts file:

export const BASE_URL = "https://api.dexscreener.com";

๐Ÿงช Testing

# Run all tests
npm test

# Run specific test suite
npm test -- -t "Token Profiles"

๐Ÿค Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ”— Links

๐Ÿ™ Acknowledgments

  • DEX Screener team for providing the API
  • Contributors and maintainers

๐Ÿ“Š Keywords

dex, screener, cryptocurrency, blockchain, trading, api, typescript, solana, ethereum, pairs, tokens, defi, crypto-api, market-data