Skip to content

Instantly share code, notes, and snippets.

@masakielastic
masakielastic / mkcert.php
Last active July 10, 2025 18:37
stream_socket_server で TLS 対応の HTTP/1 サーバー
<?php
// 1. 秘密鍵と CSR(証明書署名要求)のオプションを設定
$config = [
"config" => "/etc/ssl/openssl.cnf", // 必要に応じて openssl.cnf へのパスを調整
"private_key_bits" => 2048, // 鍵長
"private_key_type" => OPENSSL_KEYTYPE_RSA, // 鍵タイプ
];
// 2. 秘密鍵の生成
$privateKey = openssl_pkey_new($config);
@masakielastic
masakielastic / 01-README.md
Last active July 9, 2025 05:59
ICU4C で書記素クラスターを1つずつ表示する

ICU4C で書記素クラスターを1つずつ表示する

gcc -o show_graphemes show_graphemes.c $(pkg-config --cflags --libs icu-uc)
./show_graphemes
@masakielastic
masakielastic / 01-README.md
Last active July 9, 2025 02:37
str_iter のベンチマーク
@masakielastic
masakielastic / 01-README.md
Last active July 4, 2025 18:46
php-node で HTTP/2 +TLS サーバーを作成する

php-node で HTTP/2 +TLS サーバーを作成する

構成

  • package.json
  • bin/phpnode-server.js
  • public PHP スクリプトの設置場所
@masakielastic
masakielastic / cli.js
Last active July 4, 2025 16:29
php-node を使って CLI で PHP スクリプトを実行する
import { Php, Request } from '@platformatic/php-node';
import path from 'path';
import fs from 'fs';
const phpScript = process.argv[2];
if (!phpScript) {
console.error('Usage: node cli.js <php-script>');
process.exit(1);
}
@masakielastic
masakielastic / README.md
Last active July 4, 2025 13:15
php-node で phpinfo のページを表示させる

php-node で phpinfo のページを表示させる

npm init -y
npm install @platformatic/php-node
@masakielastic
masakielastic / 01-README.md
Last active July 2, 2025 14:44
nghttpx (HTTP/2) + PHP ビルトインサーバーの起動スクリプト

nghttpx (HTTP/2) + PHP ビルトインサーバーの起動スクリプト

動作確認

  • Debian 12
export PATH=$PATH:/usr/sbin
@masakielastic
masakielastic / 01-READMe.md
Last active July 2, 2025 13:17
VOICEVOX HTTP API から音声を生成するコマンド

VOICEVOX HTTP API から音声を生成するコマンド

speak

chmod +x speak
./speak "こんにちは、音声合成の世界へようこそ" hello.wav
@masakielastic
masakielastic / 01-README.md
Last active July 1, 2025 19:20
VOICEVOX で作成した通知メッセージに BGM をつける

VOICEVOX で作成した通知メッセージに BGM をつける

スクリプトの使い方

python3 generate_notification.py --voice voice.wav --bgm bgm.mp3 --duration 30

VOICEVOX で生成する通知メッセージの例(30秒前後)

@masakielastic
masakielastic / CLAUDE.md
Last active June 28, 2025 00:46
ast-grep の使い方の指針

ast-grep の使い方の指針(CLAUDE.md)

基本方針

コード分析、検索、リファクタリング作業において、テキストベースのツール(grep、sed、awk等)ではなく、ast-grepを優先的に使用してください。

ast-grep使用が必須の場面

1. コード検索・分析

  • 関数定義の検索
  • 特定のパターンの構文要素の抽出