npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@aurora-is-near/aurora-oracle

v1.1.2

Published

An oracle contract that is updated with configured USD price tokens.

Readme

Aurora Oracle

An oracle contract that is updated with configured USD price tokens. A backend process collects those prices from the CoinGecko API.

This repository enforces semantic commit messages. For more details and examples see the Conventional Commits Specification.

Usage

Get price of a pair

To get the price of tokenA against tokenB with decimals of tokenB call the following function:

getPairRate(string memory tokenA, string memory tokenB, uint8 decimalsTokenB) 

Where tokenA and tokenB are the symbols of the tokens (CAPITAL). Only allowed tokens allowed as inputs for this function.

For example, to get the price of ETH against BTC. BTC has 8 decimals:

getPairRate("ETH","BTC",8)

Or, to get the price of TPRO against USDC. USDC has 6 decimals:

getPairRate("TPRO","USDC",6)

Get list of all oracle allowed tokens

To get all allowed token symbols:

getAllTokenSymbols()

Contract

The Solidity contract is available at contracts/AuroraOracle.sol.

The Contract ABI is available at abi/oracleContractABI.json.

Scripts

scripts/00_replaceOwner.js
scripts/01_getPairRate.js
scripts/02_getAllowedSymbols.js
scripts/04_getPairRateFullTest.js

Testing

To run the Hardhat tests

yarn test

Deployment

This repository is distributed as private GitHub Package so that we can deploy it from another process (e.g. via the be-aurora-oracle).

To install the package you will need to authenticate to GitHub Packages, then:

To deploy the contract a given network:

npx @aurora-is-near/oracle deploy <NETWORK> --private-key <AURORA-PRIVATE-KEY>

For example:

npx @aurora-is-near/oracle deploy tpro --private-key abc-123

The available networks are defined in the hardhat.config.js file.

You can also set the private key via the AURORA_PRIVATE_KEY environment variable.

Adding a network

Once a new network is added to the hardhat.config.js file and the change is merged into the main branch the release process will run and a new version will be deployed. Once this new version is available we should be able to trigger the deployment script for that network, as above.