This is with hashes and scripts stored as hex. With a little work, I'm sure I could store them as binary. And I hope to make the "coin-days destroyed" feature optional, which would save a bit of space for those who don't use it. On the other hand, I plan to cache data in tables (optionally) for rendering web pages. And I am considering storing addresses (rather than just public key hashes) for substring search. So it could go up or down.

Tell me your specific needs, and I will amend the license to meet them if compatible with my goals. Want to change the CSS? No problem. Put in banner ads or change the donation address? Sure. Those things will be configurable when I get around to it. But I'll have to be careful to exclude stuff that interacts with the data in ways that extend functionality, unless of course you are willing to fork the Github project or otherwise keep your changes public under the AGPL.

Tell me your specific needs, and I will amend the license to meet them if compatible with my goals. Want to change the CSS? No problem. Put in banner ads or change the donation address? Sure. Those things will be configurable when I get around to it. But I'll have to be careful to exclude stuff that interacts with the data in ways that extend functionality, unless of course you are willing to fork the Github project or otherwise keep your changes public under the AGPL.

Or you could keep your site private and not worry.

It's the front end stuff (HTML, CSS, images, etc.) that I really want to customize.

It's the front end stuff (HTML, CSS, images, etc.) that I really want to customize.

Would you prefer to change things server-side (e.g., through templating) or would client-side scripting work? If you can do it client-side, and you serve your scripts in unprocessed source form with an AGPL-compatible license notice, I won't object. In fact, I'll adjust the output format to suit the task, e.g., XML for Ajax or HTML with data-centric class attributes. And I'll add an optional <script> element to load your code. I just want developers using your site to find it easy to grab your scripts, style sheets, etc., replicate their functionality by simply rehosting them, and extend them by editing them.

If you want to work server-side, I'd like to draw a line between functionality and presentation. I'll be happy to include configurable static fragments at various points in the output, so long as these don't bring in proprietary applications that process chain data or scripts that fail to meet the above conditions.

Confucius, you are welcome to use the URL in the OP, but do not expect as consistent service as you would get from BlockExplorer.com. I run the service for demonstration purposes, the server can not handle BBE's load, the code is not yet as optimal as BBE's, and I will probably move the site to another host/port soon.

error, I look forward to your GPL competitor. Meanwhile, for anyone who wants to customise a public Abe instance without using a Github fork, I've added the following To-Do item:

* Optionally add a link to each page allowing the user to download the source code and supporting files as a tarfile created on the fly to satisfy the AGPL.

I won't make this automatic due to security concerns, but I intend to make the new link simply tar up the directory containing abe.py, minus *.pyc and .git, and stream it to the browser as application/x-gtar-compressed or similar. By turning this on and keeping your changes in the directory, you will satisfy the AGPL. [Edit: or I will weaken Abe's license so this satisfies it.] If you implement this before I get to it, feel free to submit a patch or pull request.

I'll also allow config file nesting so that secret configuration such as a database password can be left out.

much thanks to OP for the open source alternative! Happy to see this flourish and watch the closed source alternatives die off (they were useful for awhile, but really think that where open source alternatives can exist they should)

Confucius, you are welcome to use the URL in the OP, but do not expect as consistent service as you would get from BlockExplorer.com. I run the service for demonstration purposes, the server can not handle BBE's load, the code is not yet as optimal as BBE's, and I will probably move the site to another host/port soon.

I figured out that the blk0001.dat file is just a concatenation of blocks in wire format, each preceded by two four-byte words: the chain's "magic value" and the block length. I probably checked the C++ code to verify this. The Bitcointools project contains code to parse the blocks. Abe uses that code, only slightly modified to obtain each transaction's hash.

I really like the extra stats Average Coin Age, Cumulative Coin-days Destroyed etc. I don't know how difficult it would be but something like the nethash query on BBE which produces a csv would be great - or if it was something similar (i.e. giving a csv of average stats for 100 blocks or whatever) but gave stats for Average Coin Age, Cumulative Coin-days Destroyed, average tx fee that would be super.

I'm curious what your main complaints are about AGPL? It does guarantee is will be free forever but does limit the code it can be integrated in...if he keeps all the copyright I'm sure if someone gave him the right price he'd offer it under different terms while keeping the community one as is!

With the software as is, it means (among other things) that I have to publish the source code to any changes made to it, such as changes to the site design. I'm not concerned about publishing any changes I make that fix bugs or add features; these I would just send in a pull request anyway even if it wasn't AGPL. But the license requires me to have a whole source code publishing infrastructure if I change a single byte, which is unavoidable.

This is now automated, as described in README.txt:

Quote

The Affero General Public License requires whoever modifies this codeand runs it on a server to make the modified code available to usersof the server. You may do this by forking the Github project (if youreceived this code from Github.com), keeping your modifications in thenew project, and linking to it in the page template. Or you may wishto satisfy the requirement by simply passing "--auto-agpl" to"abe.py". This option makes all files in the directory containingabe.py and its subdirectories available to clients. See the commentsin abe.conf for more information.