Hookr Enters Beta with New UI and Support for 800+ Plugins and Themes

hookr-featured

Last April, Christopher Sanford launched Hookr, a WordPress hook/API reference for developers. He initially wrote the parser/indexer for his own use, to improve efficiency in his work, and was inspired to make it a public resource.

“I have been professionally working with WordPress since 2.8, but most of which I would describe as ‘superficial development,'” Sanford said. “It wasn’t until later, roughly WordPress 3.5, that a large-scale WordPress project came along.

“I found myself spending an obscene amount of time either digging through code within my IDE, or performing countless Google searches, in order to uncover/understand various hooks, functions, constants etc. So, I wrote a plugin that would index the application/site it was installed within– this was the first iteration of Hookr.”

As a developer whose career is not based in the WordPress ecosystem, Sanford didn’t know what to expect when he tested the waters with his new public resource for developers. After several months in alpha, the traffic and feedback were enough to convince him to invest in performance improvements and an overhaul of the UI.

“The alpha version of the site was truly alpha – the UI was a complete afterthought, there were many UI bugs/hiccups, the navigation was not cohesive; it was a hot mess,” Sanford said. “Prior to the beta, I had not updated hookr.io for months, which was purposeful. I wanted to see if the traffic would completely level-off, or if it would remain consistent, with the latter being the determining factor as to whether or not I would continue with the project.”

Hookr Beta Adds UI/UX Improvements and Support for 800+ Plugins and Themes

Sanford was surprised and encouraged to find that usage of the site was solid and continued to grow. He spent the next three months fixing issues, rewriting core parts of the parser, and refining the UI to focus on features that people actually needed. The site has now entered beta with a slew of noteworthy improvements:

  • UI/UX overhaul, with emphasis on responsiveness and fewest number of clicks
  • Hookr.io is now twice as fast with half the download payload (mobile first)
  • Themes have been introduced to the index – (current count: 62)
  • Hundreds of plugins added to the index (current count: 827)
  • 5 of the latest versions of each plugin and theme (previously included a single version for each plugin)
  • Usage examples that users can cut and paste
  • Annotated source code

Index screens are infinitely-scrollable and filterable, which cuts down on a lot of clicking through endless pagination. Hook details have been refined to follow a format similar to PHP’s detail pages and include annotated code signatures and descriptions.

hookr-annotated-descriptions

In addition to the basic info about the file and lines where the code/object is defined, Hookr has also been updated to display any related hook callbacks sharing the same tag name or signature.

hookr-relations

Usage examples for every action, filter, function, and constant can now be easily copied. Users can also quickly view source code with Hookr’s new hyperlinked and annotated source code blocks.

To Rebrand or Not to Rebrand?

Many of those in search of a comprehensive hook/API reference find Hookr to be easier to use than the official WordPress.org code reference. Sanford has experienced friction from creating what some perceive to be a competing resource.

There were several people that have/had an issue with the resource even existing. For the sake of full-disclosure, my career is outside the WordPress ecosystem; it is simply a platform I use (and love), not a lifestyle.

My experience with the ‘community’ has been mostly positive; many people love the resource, while others are indifferent. I wrote Hookr to aid legit designers/developers/agencies, not hobbyists masquerading as designers/developers who have no skill besides martyrdom and nothing positive to contribute.

The Hookr name has also proven to be controversial, as a few vocal opponents find it to be off-putting and offensive. Sanford said that he is very much torn over rebranding the site but is open to the idea.

“The WordPress market is saturated – it is hard to make any sort of impact, hence the name,” he said. “The name is short, controversial, relevant, and memorable – either people love or hate it, of course. It was never the intent to insult, offend, or alienate any demographic.

“If people are uncomfortable saying “Hookr” in an open forum, then maybe it’s time to put my personal ethos aside for the betterment of the resource. That being said, I am on the fence in regards to renaming/rebranding Hookr. If I do, it’s only to remove the initial barrier/stigma and promote usage.”

As the site is still in beta, Sanford is still collecting feedback from users but is concentrating on features, fixes, and SEO. If he decides to rebrand, it will likely happen as the site moves out of beta.

The Future of the Hookr.io Resource

After streamlining the design, removing a few features that no one used, and refining those that worked, Sanford reports that so far users are enjoying the beta version of Hookr.

“The feedback I have received has been exceedingly positive,” he said. “The usage has effectively doubled.” User suggestions regarding the search functionality are shaping the roadmap for the next iteration of the resource.

“The current search implementation is more or less a filter mechanism, which is effective once you’ve drilled-down to the relevant index,” Sanford said. “However, numerous users have asked for a traditional ‘global’ keyword search that spans core, plugins, and themes. The global search, along with a few other features, will be released within the next month or so.”

While Sanford is committed to keeping the resource free for anyone to use, he is exploring a few long term options for monetization.

“Cluttering the interface with ads is not something I want to do, but never say never,” he said. “However, there is another opportunity for monetization.”

In the future, Sanford is looking at the possibility of establishing the infrastructure to offer Hookr (SaaS) for commercial theme and plugin developers.

When I released Hookr Alpha, a few people inquired about using it to augment the documentation of their premium plugin/theme. I wasn’t confident that it was a true ‘value-add.’ Over the course of a year, I’ve refined the parser and data objects to a point of viability.

The Hookr Parser analyzes source code, which is then reconciled against the inline documentation describing it; often times, the inline documentation is either missing or is erroneous. Jeff Matson and I discussed these issues and decided that Hookr would be invaluable if it could identify these issues, which it now does.

A SaaS model for monetization would allow Sanford to offer developers pre-generated documentation with their themes/plugins. He is also exploring the possibility of offering the raw data in JSON, XML, CSV, etc. to vendors to implement an API microsite.

For the time being, Sanford will continue investing time into improving Hookr as a reference and refining features according to user feedback. If you use Hookr.io regularly, feel free to offer your suggestions in the comments and follow the project on Twitter for all the latest updates.

21 Comments


  1. Excellent write-up and thanks for the mention. Since meeting with Chris a few months ago, I’ve had an inside look and some input in which I’m incredibly excited to see Hookr progress over time.

    Report


  2. Has there been any effort to collaborate &/or merge Adam Brown’s work with this?

    Report


    1. The short answer is no because the direction and methods employed between the projects are disparate.

      Report


  3. Curious as to how to get Hookr to index more plugins?

    Report


  4. I think it would be fair to say that a monetized third-party reference wasn’t exactly what WordPress had in mind when they really started documenting the core in earnest in recent years. Especially when you consider that Hookr is piggybacking on thousands of hours of volunteer effort. Information should always be free as in beer, but not at the direct expense of one person’s volunteer effort for another’s monetary gain.

    Yes, obviously, Hookr looks to be much more than a reference for the core of WordPress, but let’s not forget where it started and will continue to heavily focus.

    How interesting that Mr. Sanford’s complete unwillingness to contribute back to the official effort that Hookr almost entirely relies on was glossed over as “friction”. That inaction sends a powerful message to the hundreds of volunteers who work on WordPress core documentation that their time and effort is more valuable than they realize.

    Report


    1. I don’t think that unwillingness to contribute back to the “official” effort sends that message at all. It’s beneficial to all to have different and varying resources and awesome that the work of WP core documentation volunteers can reach even more folks through multiple resources that pull from it.

      Contributing back to the official effort comes with all kinds of constraints and a larger number of people to work with as well – not everyone wants to engage in that. Sanford simply wanted to build something that he and others would like to use and to build it the way he wanted to build it, on his timeline.

      Hookr is free – it’s inaccurate to say that it was built at the expense of WP core volunteer effort – they were already contributing those docs regardless of who uses them or builds on them. If Sanford ever makes any money from it, it’s because he decided to build a SaaS infrastructure for parsing docs or sell ads or whatever he wants. He’s built a useful website with a nice way of displaying the docs included in some open source software. It’s not a crime to do so or to make money from it.

      Report


      1. Well put, Sarah.

        @Diogenes: I see no intention by Chris to undermine anyone and capitalize on volunteer efforts. I wouldn’t have provided my insight and feedback to him if he was.

        In all reality, he’s put a ridiculous amount of time into Hookr while asking nothing in return, alone with money from his own pocket. To expect him to continue this without any monetary return would be insane.

        When discussing monetization techniques with Chris, the main focus was never to become a millionaire from it, or to capitalize on any volunteer efforts, but to simply allow him to continue his work.

        I’ve seen the work that he’s put into the project and it’s far from basic. If he does something shady, we can all call him out on it but until then, just sit back and enjoy the ride.

        Report


    2. Especially when you consider that Hookr is piggybacking on thousands of hours of volunteer effort.

      While this is basically true, I don’t think it’s necessarily fair to paint Hookr.io as some johnny-come-lately evildoer. Personally, I was excited when Hookr.io launched. The information is out there and the more the merrier who share it the better, imo. I think “friction” is a good word for what happened with some contributors, but that’s largely because I think they felt like we should centralize the effort, which I agree with to an extent.

      To say that Hookr is capitalizing on volunteerism is a bit of a stretch.

      Report


  5. @DrewAPicture, how is offering a paid subscription to generate a source code index/documentation microsite any different from an open source vendor not charging for their premium product/source, but charging for documentation/support? It is no different.

    To assert that I’m somehow capitalizing on documentation contributors is laughable– if you recall, since you and I spoke in person about this roughly a year ago, I’m parsing source code, not documentation. Yes, now the data I gather is augmented by the community’s documentation work, but is not based on it. Again, Hookr predates any effort by the community to document WordPress Core… so how you feel slighted is beyond me.

    In terms of “friction,” I find it ironic that you use phrases such as, “unwillingness to contribute back to the official effort,” when in fact, in person at WCNYC2014, I personally offered to help you & the official code reference, yet heard nothing. In fact, my parting words were “get ahold of me.”

    The root of the problem is that Hookr can provide useful information, whether or not the source is documented, and you/community inner circle somehow feel undermined by this. There is no perfect solution, especially when it comes to what we are trying to do. That being said, source code & documentation are symbiotic; you need both to be truly valuable. However, source code can be unit tested & validated, documentation cannot.

    So, I will publicly offer my help (again). If you want to work together on getting the official code reference to where it should be, let me know. Until that time, I will continue providing useful information in a format that is easy to consume for all things WordPress, not just core.

    Cheers.

    Report


    1. Uhh, that wasn’t me :)

      If you’re interested in helping out with the code reference, awesome. I think we had some very interesting conversations at WCNYC last year.

      Report


      1. Drew – So odd – the Diogenes gravatar leads to your identity, making it appear as if you were commenting under two different identities. I wonder who is masquerading as you?

        Report


    2. @hooker,

      Not a great example. Better example:

      Lots of books exist on WP coding over the years. All such books are also construed by developers as reference materials that are paid for. Whether they contribute to core work or not is rather immaterial. Some have built names for themselves in such ways and to a seasoned developer their code looks amateur. Thats not to sound pursnootity just the case as they perhaps try target an audience or target staging it up for book part deux. There are training videos monetized on.

      Documenting is a sorta peeve in that documenting code is just required. Its not optional in any corporation. Heck, the only time is was sorta optional was VERY early in micro-computing when developers (I included) worked on PC Games and we’d not document engines. We did that so a publisher or another developer would need hire us if they wanted use said engine(s). But now-a-days its just required. Can you imagine trying to code even a decent Windows Form or Windows WPF or Windows Service application and have documentation thats spread all over? Microsoft would be long since dead.

      I do see this ALOT in PHP Open source and I dont understand it. Perhaps it was because of no real competing other computer language base for viable Web App’s short of really Java.

      Now, thats different, C# and Mono are on the scene. Take a look at Mono’s documentation. Then go, “Oh my… look at that”. Not only will you see a framework that makes pretty much all comers look like bad swiss cheese but you will immediately notice something else. This does NOT look haphazard or cobbled. This REALLY looks like some folks who have BIG BIG BIG plans and they are providing software engineers with a very solid foundation. You would be right.

      From a coders perspective its simple. If I need hunt all over for resources in documentation, if I need do web searches looking for the “right ways” and examples to do things then that is time completely wasted that I could be pumping out code. Documentation should never be a frustration area these days. 25-30 years ago, yes. Now? No. Fantastic engineer can walk into Google and say, here I am. Here’s impressive code. When they ask where the documentation is if he/she says, “I dont do that” or “I let others do that” they will be shown the door.

      It interrupts and erupts others work and workflows. The #2 reason WP crushed Joomla is Joomla’s “We want others document our work” as we float around the globe charging money for seminars in large part do to the code third parties developed that make the platform do snazzy things.

      Documenting sux. You should see how much documenting takes place with even a rather simple gaming engine. You’d go, “Oh my goodness!”. Flow diagrams, state diagrams, database, objects on and on.

      It is one of the “issues” that will kill open source when it comes to projects such as Mono. There is nothing and I do mean NOTHING more frustrating than hunting for documentation. Its time consuming, makes stress levels climb and takes away BIGTIME from workflows. For example, writing code, really having a productive session. Need find some info. 45 minutes later have it. That productive session may well be hindered immense like. Happens ALL the time to coders. One of the biggest beefs heard at suds night where a bunch of coders and others get together here local is that.

      Want really make money Hooker? Not as a hooker? LOL. Write a book. But DONT write a book thats a “Lets learn how to “functions.php” or enqueue blah blah. Write a real quick reference book for WP. The meat and potatoes are function, hook etc. references (just like any quick reference guide) and a few small sections “Plug in basics” “shortcode basics” etc.

      Then just keep updating it every year. Look at ones that Orielly has done for other languages. Do same. Contact O-Reilly firth thing Monday morning and tell them its underway. I guarantee you they will go, “Awesomesauce!” and you will make a GREAT DEAL of money.

      Report


      1. Regarding books, I think the classic way of publishing books is not very practical in delivering up-to-date information. By the time a book on WordPress programming is published, it’s already outdated. I’d like to see some efforts toward living book resources that are updated monthly rather than waiting a year or longer for a new edition. Addi Osmani’s books about Javascript are a bit like that.

        Report


      2. Agreed on this point. I’d also avoid most publishers. Self-publish and keep 95-100% of your profits instead of the table scraps that most publishers will throw your way.

        Report


  6. The fact everything is joined together (themes, core, plugins) makes this docs more efficient. I think it’s a more improve function reference from Codex. Nice job..

    Report

Comments are closed.