定制 mrshanebarron/code-block 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mrshanebarron/code-block

最新稳定版本:v1.0.3

Composer 安装命令:

composer require mrshanebarron/code-block

包简介

Syntax highlighted code block component for Laravel - supports Livewire and Vue

README 文档

README

A syntax-highlighted code block component for Laravel applications. Displays code with optional line numbers and copy functionality. Works with Livewire and Vue 3.

Installation

composer require mrshanebarron/code-block

Livewire Usage

Basic Usage

<livewire:sb-code-block language="javascript">
    const greeting = "Hello, World!";
    console.log(greeting);
</livewire:sb-code-block>

With Line Numbers

<livewire:sb-code-block language="php" :show-line-numbers="true">
    <?php
    namespace App\Http\Controllers;

    class HomeController extends Controller
    {
        public function index()
        {
            return view('home');
        }
    }
</livewire:sb-code-block>

With Copy Button

<livewire:sb-code-block language="bash" :copyable="true">
    npm install @package/name
</livewire:sb-code-block>

With Filename

<livewire:sb-code-block language="javascript" filename="app.js">
    import Vue from 'vue';
    const app = new Vue({ el: '#app' });
</livewire:sb-code-block>

Livewire Props

Prop Type Default Description
language string 'text' Programming language
show-line-numbers boolean false Show line numbers
copyable boolean false Show copy button
filename string null Display filename header

Vue 3 Usage

Setup

import { SbCodeBlock } from './vendor/sb-code-block';
app.component('SbCodeBlock', SbCodeBlock);

Basic Usage

<template>
  <SbCodeBlock language="javascript" :code="code" />
</template>

<script setup>
const code = `function greet(name) {
  return \`Hello, \${name}!\`;
}`;
</script>

With Options

<template>
  <SbCodeBlock
    language="typescript"
    :code="code"
    filename="types.ts"
    show-line-numbers
    copyable
  />
</template>

Supported Languages

<template>
  <SbCodeBlock language="javascript" :code="jsCode" />
  <SbCodeBlock language="typescript" :code="tsCode" />
  <SbCodeBlock language="php" :code="phpCode" />
  <SbCodeBlock language="python" :code="pyCode" />
  <SbCodeBlock language="html" :code="htmlCode" />
  <SbCodeBlock language="css" :code="cssCode" />
  <SbCodeBlock language="bash" :code="bashCode" />
  <SbCodeBlock language="json" :code="jsonCode" />
  <SbCodeBlock language="sql" :code="sqlCode" />
</template>

Vue Props

Prop Type Default Description
code String '' Code content
language String 'text' Language for highlighting
showLineNumbers Boolean false Display line numbers
copyable Boolean false Enable copy button
filename String null Header filename

Events

Event Description
copy Code was copied

Supported Languages

  • javascript / js
  • typescript / ts
  • php
  • python
  • html
  • css / scss / sass
  • bash / shell
  • json
  • sql
  • yaml
  • markdown
  • text (no highlighting)

Features

  • Syntax Highlighting: Language-aware coloring
  • Line Numbers: Optional line number gutter
  • Copy Button: One-click copy to clipboard
  • Filename Header: Optional file name display
  • Responsive: Horizontal scroll for long lines

Styling

Uses Tailwind CSS:

  • Dark background (gray-900)
  • Monospace font
  • Colored syntax tokens
  • Gray line numbers
  • Rounded corners

Requirements

  • PHP 8.1+
  • Laravel 10, 11, or 12
  • Tailwind CSS 3.x

License

MIT License

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: Blade

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-14

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固