Over seven months ago I announced Steem Engine QL, an open source GraphQL server for working with Steem Engine, specifically data from the blockchain. Since the announcement, it has been running in production since the announcement and free for everyone to use.
Since the announcement, the library has been continually updated and improved. While features requiring authentication have yet to be added, you can perform queries you might otherwise use the SSCJS library or some other Steem Engine library to query for data.
The playground is running here where you can query the live Steem blockchain for data. To get the token balance of someone's Steem Engine wallet, on the left hand side of the playground you can paste in the following:
{
tokenBalance(symbol: "ENG", account: "harpagon") {
symbol,
balance
}
}
One of the newest additions is the ability to query for market history data. This will currently only return daily market data for a specific token, but will give you price data which is handy for charting.
{
marketHistory(symbol: "ENG") {
timestamp,
symbol,
volumeSteem,
volumeToken,
lowestPrice,
highestPrice,
openPrice,
closePrice
}
}
Steem Engine QL is currently being used on the new and upcoming Steem Engine DEX, which you can see implemented into the codebase here: https://github.com/steem-engine-exchange/steem-engine-dex
Changes
- All types and resolvers now work with the new node changes for MongoDB. Since Steem Engine moved over to MongoDB for its database implementation, some of the field names changed and how data is queried.
- Added in support for getting market history
- Added support for getting transaction information
- Added in support for getting specific block information and the latest block
- Fixed instances where large integers exceed 32 bit, BigInt implemented to work around large numbers implementation
- Fixed some incorrect types for return values (mostly on tokens)
- Fixed instances where JSON objects come back as strings and were not being properly parsed for the front-end
- Updated to latest version of TypeScript to take advantage of features such as Nullish Coalescing and Optional Chaining
- Updated dependencies to latest versions
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit