定制 phpexperts/tempest-highlight-api 二次开发

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

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

phpexperts/tempest-highlight-api

最新稳定版本:v1.5.0

Composer 安装命令:

composer create-project phpexperts/tempest-highlight-api

包简介

A light-weight, dockerized API server for tempest/highlight.

README 文档

README

This code is hosted at https://highlight.phpexperts.pro/

License: MIT

https://github.com/PHPExpertsInc/highlight.phpexperts.pro/

API Routes

POST: /highlight
{
    "lang":  "language",
    "text":  "JSON-encoded text"
}
        
Output: text/html

Installation Instructions

Via Composer + Docker:

composer create-project phpexperts/tempest-highlight-api
cd tempest-highlight-api
# Edit the desired HTTP port in `docker-compose.yml`.
docker compose up -d

Via Git + Nginx:

Running natively requires PHP v8.3 or higher with ext-json.

sudo -s
cd /var/www
git clone https://github.com/PHPExpertsInc/highlight.phpexperts.pro
cd highlight.phpexperts.pro/

# Add a new virtualhost:
cp docker/web/sites/001_default.conf  /etc/nginx/sites-available/999_my-highlighter.conf
# Edit it and add a `server_name my.url;` directive.
systemctl restart nginx

Clients

Pure JavaScript Client

    <link rel="stylesheet" href="https://highlight.phpexperts.pro/css/highlight-tempest.css" />
    <code lang="JavaScript">
    console.log("Hello, World!");
    </code>
    <script src="https://highlight.phpexperts.pro/js/highlight.min.js" defer="defer"></script>

PHP Client

First, composer require phpexperts/rest-speaker. Then:

Copy [src/client.php] or copy this code directly.

    use PHPExperts\RESTSpeaker\NoAuth;
    use PHPExperts\RESTSpeaker\RESTSpeaker;

    $url = 'https://highlight.phpexperts.pro';
    $highlighter = new class(new NoAuth(), $url) extends RESTSpeaker {
        public function highlight(string $language, string $text): string
        {
            $result = $this->post('/highlight', [
                'lang' => $language,
                'text' => $text
            ]);
    
            if ($this->getLastStatusCode() === 400) {
                throw new \RuntimeException($result);
            }
    
            return $result;
        }
    };
    
    echo $highlighter->highlight('PHP', 'echo "Hello, World!\n";');

统计信息

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

GitHub 信息

  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-03-30