Glasnost v0.15 released: GraphQL API for Steem and Golos blockchains

in #steemdev7 years ago (edited)


Steem and Golos blocks are now synced and persisted in realtime.

Repos

Glasnost Docker hub

Glasnost Github Repo

Configuration

Glasnost now requires a PostgreSQL database.

You need to configure the following Postgres database parameters using the Docker ENV variables:

  • GLASNOST_DB
  • GLASNOST_DB_HOST
  • GLASNOST_DB_PORT
  • GLASNOST_DB_USERNAME
  • GLASNOST_DB_PASSWORD

Other parameters, such as PORT, STEEM_URL and GOLOS_URL, can be configured in the Docker file.

Changelog

  • golos_blocks and steem_blocks tables, indexes and schemas were added
  • blockchain synchronization subsystem and events handling has been improved and now handles block events
  • sync speed and perfomance was improved
  • various minor improvements and bugfixes
  • updated docker image

Examples of GraphQL queries

{
  comments(blockchain:"steem", author: "ontofractal", isPost: true, category: "steemdev"){
    id,
    title,
    author,
    permlink,
    parentAuthor,
    parentPermlink,
    body
    tags,
    category,
    created,
    totalPayoutValue,
    pendingPayoutValue
  }
}
{
  comment(blockchain:"steem", author: "ontofractal", permlink: "glasnost-v0-12-released-now-with-postgresql-realtime-and-7-day-lookback-comments-data-sync-open-source-app-server-for-steem"){
    id,
    title,
    author,
    permlink,
    parentAuthor,
    parentPermlink,
    body
    tags,
    category,
    created,
    totalPayoutValue,
    pendingPayoutValue
  }
}

Road map

Next release: order_by argument for Graphql queries, more comment search features, blocks Graphql queries

Possible future features:

  • Convenient websockets APIs for accessing blockchain data
  • Performant, low latency APIs
  • Advanced filters and content display settings
  • real-time streams of enriched blockchain events

Technologies

  • Elixir
  • Phoenix
  • GraphQL
  • PostgreSQL

What's Glasnost?

Read more about Glasnost and its roadmap in the introduction post

Development process

Glasnost is a single code base developed simultaneously both for Steem and Golos blockchains. Sustainable Glasnost development is made possible by generous support of Steem and Golos communities and @cyberfund program to support Golos open source ecosystem. Read more about Golos and cyberfund open source support in this post by @hipster.

Feedback

Please submit bugs, issues or feature requests to Github. Also get in touch with me: ontofractal at protonmail.com or steemit.chat.

(ノ◕ヮ◕)ノ*:・゚✧

Sort:  

Clean code and a modern stack. I love it :)

100% upvote for furion!
@timcliff @furion and @blocktrades helped get this one to $180 with only 77 votes!

I was wondering , does this mean Golos and Steemit posts are on each others sites now? whjat does it mean to have them synced??

Also steem is now on poloniex sgain, wallets reenabled, man i bet we will see a poloniex steem pump!

Golos and Steem are on separate blockchains. I believe the sync means that the database is updated as the blocks are announced in real time.

Thanks, @furion! This stack is really a comfortable one.

Very cool. I've thought about building a Hypermedia API of the STEEM blockchain. Maybe I'll play around with this instead.

Wow i am glad I found this post earlY! EVERYONE gets an upvote! LOVE the big words being thrown around in here!

I wish more people would reward the coders and programmers and people who enjoy that stuff here on steemit! steemiut developers and people learning to be developers are very important to reward, we need to train more young people who might have a talent for this work early on,

Im glad i was able to upvote everyone's comments early, i think everyone will have a LOT of fun ding some work for steemit! especially for school projects, i can think of nothing more useful for a schools computer science class then teaching about steemit since anyone can create a steemit account and a classroom can create their own steem node and a class can apply to become a witness and then the school kids can graduate and continue being paid from steemit like a guaranteed job after graduation, imagine THAT, imagine a world where kids all use steemit to submit homework too! oh man so many possibilities!

I can imagine it. It is a beautiful world we are waking up to. I agree in supporting the dev community the creativity that flows on this platform is refreshing.

Thanks, @lukestokes! Do not hesitate to get in touch if you need any assistance :)

Nice Post, and a lot of money earned now. Well done..
Your photo is very nice, I like it.

If you like my posts, just follow me and resteem and upvote my posts. @thunderland

The scenery is amazingly beautiful

this one is full of information
it's really worth
:)
upvoted

Elixir seems like a great fit for a blockchain app server Thanks for your continued work on this. I noticed Steempunks.com is not working any more. Have you retired it?

Elixir seems like a great fit for a blockchain app server

Yep, quite enjoyable!

BTW, I've finally completed migration and steempunks.com is back online.

Nice post with lots of information.

thank you for sharing valuable information.

What does it mean to have Steem and golos synced?? so now all poists on steemit areon golos and all golos posts are on steemit?? wioll golos users have steem to collect and will steemit users have golos to collect?

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.029
BTC 67130.22
ETH 3466.74
USDT 1.00
SBD 2.73