CloutAPIs is a set of APIs that sit on-top of the BitClout blockchain to provide simpler, richer or additional functionality and hopefully will prevent multiple developers from having to implement the same features.
In some cases, CloutAPIs will augment blockchain information with data stored off-chain for informational, metadata or optimization purposes.
As early developers on BitClout we saw two trends that we hope to help avoid continuing:
- Many developers all having to write the same functionality to get their apps up and running
- Developers creating siloed "destinations" for individual features
We don't believe that the future of the platform is one node with feature X, and another with feature Y, but rather a framework of features that are collaborated on. In time, we hope to build an economic framework around this too.
Today, CloutAPIs are free for all to use. In the near future we will introduce API keys for apps and in the further future will look to explore models of monetization that can support a developer ecosystem — where a new developer may choose to distribute their feature via CloutAPIs instead of building a new destination portal for it. That is when we all truly win.
- Get trending CloutTags in real time
- List posts for any CloutTag
- Autocomplete CloutTags
- Get metadata for CloutTags
If you have an idea that you'd like to see made (or want to contribute), jump over to the Issues and suggest it!
All APIs are available at https://api.cloutapis.com/
. Alternatively, you can clone, and host your own version of them.
You are welcome to use our hosted versions for development, although know that we intend to explore monetization for professional usage in the future (via BitClout.)
Make sure you have Node.js and Yarn installed.
git clone https://github.com/cloutapis/cloutapis
cd cloutapis
yarn
- A local Postgres instance running
- A user with username
cloutapis
, passwordcloutapis
(these are declared in.env
)
Once you have your local postgres instance running with the user created, you can run:
yarn db:create
yarn db:migrate
The typescript needs to be built before running. This only takes a few seconds:
yarn build
yarn start
Your app should now be running on localhost:5000.
The worker can be started after yarn build
:
node dist/apis/clouttags/fetch/worker.js
make start # starts the env
make stop # stops the env