# Evolution of the Better Call Dev Tezos explorer
The first version of our contract explorer was a proof-of-concept, which turned out to be a success, so we decided to bring it to the next level and build a solid product.
One of the key features that we have tried to keep so far is the ability to work without the server-side. Of course, we make RPC requests to Tezos nodes as well as use several indexer APIs, but we can switch between different servers seamlessly which gives us some kind of freedom and introduces some level of decentralization. It’s also extremely easy to deploy Better Call Dev, we are using GitHub Pages at the moment which additionally guarantees that the code you see is what is actually running in your browser (plus no tracking).
But this advantage eventually became a limitation, and we needed to move forward in order to provide a better experience to our users. With the support of the Tezos Foundation we have rewritten everything from scratch and soon will present a new version of our contract explorer with a bunch of new cool features.
# Global goals
# Give developers a tool to manage all their Tezos projects
Something like the GitHub dashboard, but in a more decentralized way. Developers will be able to monitor all their contracts from multiple networks in one place, automatically grouped by project and versioned. If you are not a developer you still will be able to subscribe to the projects you are interested in. These features together with rich stats and customizable alerts will be available to authenticated users.
# Make the dapp ecosystem more transparent to the community
Of course, you can surf contracts via explorers, or visit resources like tezos.help and tezosprojects.com. But nothing gives you the feeling that you have your finger on the pulse of the development, that something is really being done. What you probably want is to see the recent updates, new releases, project stats, etc. On BCD2 you will be able to search contracts by multiple criteria, in a way similar to GitHub search as well.
In addition to the information about operations, code, and state for a particular contract we are going to provide answers to the following questions:
- What is the project this contract belongs to?
- Which version is that?
- What has changed in this version?
- Which language is it written in?
- What are the usage statistics (number of calls per entrypoint, per user, total audience, tez volume, etc)?
# Various improvements and bugfixes
Besides the new features, some existing functionality is to be extended as well. Better operations displaying and filtering, rich code viewer, switching between different representations, and of course a cleaner UI. There are several major improvements that we want to introduce:
- A better Michelson viewer with unexpanded macros and an ability to download the source
- A rich error formatter which not only displays the description message but shows the actual failed code line
- A dead-simple tool to deploy contracts to testnets by drag’n’drop with automatic initial storage generation
- Operations that are still pending or stuck in mempool will be displayed (same as in TzKT explorer)
- Complex transactions containing multiple callbacks will be decoded in full (previously only current contract related operations were decoded)
- Public API! No explanation needed
Pick Randombutton will eventually become truly random 😅
And, of course, many bugs will be fixed, especially related to the Big Map handling.
# Search engine
Last but not least, the ultimate Tezos smart contract search engine allowing you to find everything in code and storage including big maps. BCD searches simultaneously across all networks and provides rich query customization.