惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
量子位
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
博客园 - 聂微东
aimingoo的专栏
aimingoo的专栏
Microsoft Security Blog
Microsoft Security Blog
U
Unit 42
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Integrating TailAdmin with Laravel
Rafli Zocky · 2026-05-07 · via DEV Community
Cover image for Integrating TailAdmin with Laravel

Rafli Zocky

Full code: raflizocky/laravel11-tailadmin.

# Laravel 11 Requirements

php -v # >= 8.2
composer -v
node -v # >= v14.16
npm -v

Enter fullscreen mode Exit fullscreen mode

Laravel

Start Apache & MySQL in your web server.

# install laravel 11
composer create-project "laravel/laravel:^11.0" example-app

# .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_db
DB_USERNAME=root
DB_PASSWORD=your_password

# migrate & serve
php artisan migrate
php artisan serve

Enter fullscreen mode Exit fullscreen mode

TailAdmin

1. Download

Use the HTML + Tailwind CSS template. Extract and rename it to tailadmin, then move it to Laravel's public folder.

2. Webpack

Since the template uses Webpack, build the project to generate required assets:

# Navigate to public/tailadmin, open terminal
npm i
npm run build

Enter fullscreen mode Exit fullscreen mode

Verify a build folder was created inside tailadmin.

3. Base Layout

Inside resources/views, create a components folder and layout.blade.php. Open build/index.html, copy its content, paste into layout.blade.php.

Update all asset paths:

<!-- Change from: -->
<link href="style.css" rel="stylesheet">

<!-- To: -->
<link href="{{ asset('tailadmin/build/style.css') }}" rel="stylesheet">

Enter fullscreen mode Exit fullscreen mode

  • components/header.blade.php
<head>
   ...
</head>

Enter fullscreen mode Exit fullscreen mode

  • components/sidebar.blade.php — continue...

  • layout.blade.php

<!DOCTYPE html>
<html lang="en">

<x-header></x-header>

<body x-data="{ page: 'ecommerce', 'loaded': true, 'darkMode': true, 'stickyMenu': false, 'sidebarToggle': false, 'scrollTop': false }"
    x-init="darkMode = JSON.parse(localStorage.getItem('darkMode'));
    $watch('darkMode', value => localStorage.setItem('darkMode', JSON.stringify(value)))"
    :class="{ 'dark text-bodydark bg-boxdark-2': darkMode === true }">

    <div x-show="loaded" x-init="window.addEventListener('DOMContentLoaded', () => { setTimeout(() => loaded = false, 500) })"
        class="fixed left-0 top-0 z-999999 flex h-screen w-screen items-center justify-center bg-white dark:bg-black">
        <div class="h-16 w-16 animate-spin rounded-full border-4 border-solid border-primary border-t-transparent"></div>
    </div>

    <div class="flex h-screen overflow-hidden">
        <x-sidebar></x-sidebar>
        <div class="relative flex flex-1 flex-col overflow-y-auto overflow-x-hidden">
            {{ $slot }}
        </div>
    </div>
    <script defer src="{{ asset('tailadmin/build/bundle.js') }}"></script>
</body>
</html>

Enter fullscreen mode Exit fullscreen mode

4. Dashboard

  • app/Http/Controllers/DashboardController.php
# php artisan make:controller DashboardController

<?php
namespace App\Http\Controllers;

class DashboardController extends Controller
{
    public function index()
    {
        return view('dashboard.index');
    }
}

Enter fullscreen mode Exit fullscreen mode

  • routes/web.php
use App\Http\Controllers\DashboardController;
Route::get('/', [DashboardController::class, 'index']);

Enter fullscreen mode Exit fullscreen mode

  • resources/views/dashboard/index.blade.php
<x-layout>
  <!-- continue... -->
</x-layout>

Enter fullscreen mode Exit fullscreen mode


Need help building your app?
I'm available for freelance web & Android development — raflizocky.netlify.app

☕ Support my writing: paypal.me/raflizocky · saweria.co/raflizocky