Lean Admin

A lean framework for building custom admin panels
for your customers.

What is Lean?

Lean is an admin panel for Laravel. It's used like this:

class ProductResource extends LeanResource
{
    public static $model = Product::class;

    public function fields()
    {
        return [
            Text::make('name'),
            Trix::make('description'),
            Number::make('price'),
            Number::make('vat_rate'),
            Boolean::make('enabled'),
        ];
    }
}

... so it's Nova?

A bit, but not quite. It's inspired by Nova when it comes to resource fields.

Nova had a brilliant idea to use declarative PHP code to define fields.

But the implementation isn't great for customer facing admin panels.

I'm not saying Nova is bad! Nova is awesome when you're building an internal admin panel for your team.

But many of us want to use something like Nova, but for customer admin panels.

  • Saves so much time.
  • So easy to maintain.
  • No repetitive code in your app.
  • Doesn't add a billion tables to your database.
  • Just declarative code and nothing else.

Why not some other existing admin panel?

Because they suck. Kind of. Well for me anyway.

The other admin panels are probably great for their specific use cases, but those use cases are not my apps. See the section right below this.

I want an admin panel that's used like Nova, but lets me customize things.

I don't want generated migrations, controllers, views, or any of that. That stuff feels gross for my apps.

Okay, so what makes Lean so special? Why is it better than everyone else?

One word. It's called...

Livewire

Wait, don't click away if you hate Livewire.

Let me explain.

If you look at Nova, it's basically PHP code (fields and stuff) translated into an interactive frontend.

That's what Livewire is great as.

Also, another reason why Livewire is great is that...

Blade is awesome

You can customize the view of any field, action (index/create/show/edit), or the layout.

Just by calling a single command that publishes the Blade file.

You can also use Livewire in your fields if there's some complex logic.

But the absolute best part is that...

Every action (index/create/show/edit) is a Livewire component.

And it can be replaced.

In my app, I wish I could use a different view for my edit order page.

You see, I have an e-commerce app. And I'm using Nova right now. It worked in development, but it's unusable by humans. When you click Edit Order, you see a page where you can change the customer address and that's it.

All the important stuff is in related tables.

  • order items
  • payment method
  • shipping method
  • order statuses
  • payment statuses
  • extra fees

So with Lean, I can just use a completely custom edit order page — a Livewire component.

To have a UI that makes sense to my customers, and is dynamic — shipping method selects, real-time product editing, automatically updating order totals, ...

Endless possibilities.

BTW — if you're already using Livewire, you could just reuse these components from your app 😉

Now it's a matter of:

// OrderResource

public function customActions()
{
    return [
        'edit' => EditOrder::class,
    ];
}

What a rush.

Also, using Blade is awesome because you can use JS frameworks like Vue in Blade but not Blade in Vue.

And then there's the other improvements. We use resource-specific language strings, so that stupid languages like mine (Czech) are supported.

Where can I buy this? Now.

It's great that you're excited, but it's not done yet. It technically works, but it needs some tweaks.

The design needs to be improved.

The backend needs to be restructured a bit (I can't push out imperfect PHP, sorry!).

The UI needs some features (e.g. sorting on index views).

And it needs a few more fields.

That's it.

But I want to announce this before it's finished for one simple reason...

I want to know what bothers you about admin panels

That's right, I want to fix your problems too. I don't just want to build something that works for my one ecom app.

I want to build something that fixes all the other issues people have with admin panels that I didn't think of.

I'm fairly confident that the structure and tech stack I used makes basically everything possible.

But I want to be sure that it's perfect.

So, please, tell me your pains. I'll review each one of them and see if my system can fix them.

If yes, I get to feel better.

If no, I have more work to do.

What do you get out of it?

A big discount. And access weeks before it's officially released.

My plan is to:

  1. Have you fill out this survey & give me your email
  2. Go through the answers to see what my admin panel has to be capable of
  3. Make my admin panel awesome
  4. Let you in, with that yuuuge discount.
  5. Make final changes, with hopefully polite complaints from you all.
  6. LAUNCH WITH LOTS OF 🚀 EMOJIS

So, if you're interested in accessing this early (and getting that JUICY DISCOUNT), please click below and pour out all your admin panel trauma on me.

Early access

Fill out the survey & join the waiting list. Early access customers get a significant discount.

Thank you ❤️

Love,

Samuel