Tired of hacking together WordPress plugins and delivering products you know could be better?

As a baseline TypeRocket brings custom fields and MVC into your workflow so you can get things done in half the time, without another plugin.


TypeRocket is licensed under the GPL and can be used on any WordPress website or project.

Repeater Fields and More

We have over 20 fields types including: A repeater, builder, editor, multi-select, image, gallery, and other fields.


Learn how to use TypeRocket with our high quality documentation, tutorials, and videos.

Modern Security

Make route middleware. Plus, you can keep your files outside of public view with the TypeRocket Root WordPress Installation.

Modern Deployments

Deploy your TypeRocket enabled WordPress site using systems like Laravel Forge and Envoyer for Zero Downtime.

Advanced Features

Inject your site with enterprise features like custom HTTP routes, middleware, controllers, page builders, and more.

Upgrade Your UX

TypeRocket removes the plugin and database dependancies normally required for custom fields and works best with version control.

Custom Data Structures

Build anything! Building post types, taxonomies, and models for MVC custom DB tables is simply fast and clean.

Before Switching To TypeRocket

Our users tried everything: Advanced Custom Fields, page builders, custom post type plugins, SEO plugins, theme options frameworks, meta box plugins, security plugins, Sage, custom code, starter themes, ect.

Speed. Beauty. Power.

Page Builder

Create your own fully custom page builder with modular components for amazing landing pages.

The Page Builder

Custom Post Types

Add custom post types with taxonomies, fields, meta boxes and a lot more.

Make a Post Type

Theme Options

Manage the global state of your design with theme options.

Theme Options

Custom MVC Backends

Create admin pages using MVC and custom tables and fields.

Admin Pages

A Coder's Dreamland

A few examples of doing more with less.

FREE Repeaters

Repeaters and advanced field types without the hassle and cost of paid plugins. Put repeaters in repeaters... in repeaters.

echo $form->repeater('Features')->setFields([
    $form->row( $form->text('Button'), $form->text('URL') ),
    $form->image('Featured Image')

Post Type + Fields

No hooks. No plugins. No Hacks. All code.

$team = tr_post_type('Person', 'Team')->setIcon('users');
tr_meta_box('Team Details')->apply($team);

function add_meta_content_team_details() {
    $form = tr_form();
    echo $form->image('Photo');
    echo $form->text('Job Title');

Fields Everywhere

Add custom fields to taxonomies, post types, profiles, the font-end, and anywhere else.

$pub = tr_taxonomy('Publisher');
$pub->setMainForm(function() {
    $form = tr_form();
    echo $form->text('Company');
    echo $form->gallery('Photos');

add_action('tr_user_profile', function($user) {
    $form = tr_form();
    echo $form->text('Job Title');
    echo $form->gallery('Photo Gallery');


By-pass ugly template hacking. MVC and custom routing are the way of the future.

tr_route()->put()->match('/profile/(.+)/update', ['id']))->do('[email protected]');
tr_route()->get()->match('/profile/(.+)', ['id']))->do('[email protected]');

To your controller...

class MemberController extends Controller
    public function profile( $id ) {
        return "Hi Member {$id}!";

    public function update( $id, \App\Models\Member $member ) {
        $member->name = $this->request->getFields('name');
        $this->response->flashNext('Profile updated!');
        return tr_redirect()->back();

Fast Routes + JSON APIs

Making a JSON API for your models is simple. Plus, you can add eager loading of relationships.

add_action('tr_load_routes', function() {

        ->do(function() {
            return (new App\Models\Post)->with('meta')->published()->get();


What Say The Web Developers?

Eric Michel

TS Designs

Creating custom post types with custom fields could be a real pain. Some plugins like ACF could help, but often times they were too rigid and/or too bloated or inefficient.

Our goal is to provide a client experience that makes entry of new data easy, efficient, and hard to screw up. TypeRocket gives us way more flexibility in terms of custom post types, metadata, and relationships. We’re able to bring a more polished product to market, and faster than before.

Steven Wade

Follow Up Boss

TypeRocket for me has brought the fun back to building with WordPress. It gives me the modern tool sets that I desire and the simplicity that WordPress is known for. Having been away from WordPress for many years, TypeRocket helped me jump right in and feel comfortable building custom apps the way that I’m used to, on top of a stable and powerful platform. Thank you TypeRocket 🚀 !

I try to make my code as clean as possible and the WordPress admin editing user-friendly. I’ve used plugins before that aim at the user-friendly aspect with custom fields and repeaters, but they didn’t allow my code to be cleaner and they were harder to work with as a developer.

TypeRocket provides a better user experience for the client and the developer. Working with post types, custom fields, and theme options is quick, painless, and produces cleaner maintainable code.

Alexandra Spalato

Web Designer, Spain

I was searching for a solution to speed up my theme and plugin development while keeping my site super fast without relying on external plugins. Then, I found TypeRocket.

Just looking over the TypeRocket package, and I have to say — absolutely gorgeous code. It makes me feel good just looking at the organization and code formatting. Such a masterpiece. Thank you!

Marshall Klickman

Web Developer, USA

Working with TypeRocket has been surprisingly awesome; I honestly didn’t expect to pick it up so quickly. Working with the page builder is a lot more straightforward than I thought it would be, and is by far the simplest way to customize the WordPress admin interface without a bunch of ugly hacks. The API is simple and straightforward, and the interface components are designed incredibly well.

I’ve only begun to scratch the surface of what TypeRocket can do, and if I’m already this impressed by it, I’m pretty pumped about using it in future projects.