ベースマキナ エンジニアブログ

https://tech.basemachina.jp/

ベースマキナ エンジニアブログ

フィード

記事のアイキャッチ画像
Playwrightでライブプレビューツールを実装する
はてなブックマークアイコン 66
ベースマキナ エンジニアブログ
こんにちは、yebis0942です。 先日、@basemachina/bm-view-previewというツールをnpmで公開しました。ベースマキナのビュー機能のソースコードをローカル環境で編集しながら、Next.jsのnpm run devのようにライブプレビューで動作を確認できるツールです。 ライブプレビューはPlaywrightによってコントロールされたChromiumで表示しています。PlaywrightをE2Eテストや自動化以外の用途で使うのは珍しい事例かと思いますので、その背景と実装の裏側についてご紹介します。 ビュー機能とは ローカル環境で開発したい bm-view-previe…
9日前
記事のアイキャッチ画像
Cloudflare WorkersのCron Triggersでリリース当番通知botを作った話
ベースマキナ エンジニアブログ
こんにちは、syumaiです! ベースマキナでは、現在Cloudflare WorkersのCron Triggersを活用したリリース当番通知botを社内で運用しています。このbotは、リリース対象日の朝にリリース担当メンバーにメンションを行います。実装はTypeScriptで行われています。 今回の記事では、 なぜリリース当番通知botを作ることにしたのか なぜCloudflare Workersを使ったのか Cloudflare Workersによる定期実行Workerの実装例 などについて紹介させていただきます。 なぜリリース当番通知botを作ることにしたのか もともと、ベースマキナで…
17日前
記事のアイキャッチ画像
TypeScript/JavaScriptの不要なコードを削除するツール「Knip」の紹介
ベースマキナ エンジニアブログ
こんにちは、taroです! 今回は、ベースマキナのTypeScriptのプロジェクトで不要なコードの検知・削除で使用しているKnipについて紹介します。 Knip とは Knipは、TypeScript/JavaScriptのコードベースの不要なコードを検出するCLIツールです。 以下が検出できる不要なコードの例です。 package.jsonのdependencies/devDependenciesの中で使われていないpackage exportされているがどこからもimportされていない変数、関数、型など 使用していないファイル その他、検出できる内容の一覧はこちらで確認できます。 また…
1ヶ月前
記事のアイキャッチ画像
Goで0秒待つとどうなるか
ベースマキナ エンジニアブログ
こんにちは。yebis0942です。GoとTypeScriptを書いています。夏祭りのおみくじで「待ち人来る」を引いたので、最近のちょっとした待ち事例についてご紹介します。 Goでタイムアウト時間を指定する関数を呼び出したとき、待機時間を0秒にすると何が起きるのか?という点が社内のレビューで少し話題になりました。 気になって調べてみたところ、同じ0秒のタイムアウト処理でも、内部の実装によって振る舞いが異なるケースがあることが分かりました。 よく見るタイムアウト処理 Go言語では、一定時間だけあるchannelを待つというタイムアウト処理は以下のように time.After() を使って書くこと…
2ヶ月前
記事のアイキャッチ画像
ベースマキナのエンジニアブログを始めます
ベースマキナ エンジニアブログ
こんにちは、syumaiです! このたびベースマキナのエンジニアブログを始めることになりました! 本記事では、エンジニアブログを始めることになった経緯や、これからどういった内容について書いていくのかなどについて簡単に紹介します! ベースマキナとは 今回は、一本目の記事ということで、簡単にサービスの紹介もさせてください! ベースマキナは、一言で言うと管理画面のSaaSです。特に社内向けの管理画面をメインの用途としたプロダクトです。 社内向けの管理画面は専任のチームが存在しないことも多く、 ライブラリの更新、新機能追加のメンテナンスが滞る 権限管理の実装を十分に行えない といった課題を抱えている場…
2ヶ月前