フォルシア の技術ブログ

「レンズ」でフォーカス!@hookform/lensesを使ったフォーム実装

こんにちは、フォルシア株式会社エンジニアの籏野です。 先日、React Hook Formの公式アカウントが以下のようなポストをしているのを見つけました。 https://x.com/HookForm/status/1894698099677028618 新たにリリースされた@hookform/lensesがどのようなライブラリなのか気になり調べてみました。 @hookform/lensesとは GitHubに記載の内容を訳すると以下のようになります。(日本語訳 by DeepL) React

超直感的なバリデーション?ArkType入門

こんにちは、フォルシア株式会社エンジニアの籏野です。 今回はzodやvalibotと同じバリデーション用ライブラリであるArkTypeについて紹介したいと思います。 ArkTypeの特徴 ArkTypeの大きな特徴としては以下の点が挙げられます。 TypeScriptの型記法に似た記法によりバリデーション定義が可能 実行時にはzodの100倍高速に動作し、エディター上でも高パフォーマンスな補完を提供

B to B SaaSプロダクトの継続的開発・運用保守をする上での課題とそれに対する取り組み

こんにちは、エンジニアの松枝です。 私が所属する部署では企業が旅行検索サービスを作成できるSaaSプロダクトの開発、運用保守を行っています。ありがたいことに導入していただける顧客の数も増え、数多くの顧客プロジェクトが並走しています。 ただ、顧客数が増えるとともにSaaSプロダクトという特性上品質保証のための検証コストが高まったり、各顧客の要望に

PostgreSQL 注目機能改善 #1: window関数編

まえがき 本連載はPostgreSQLの比較的新しいバージョンで導入、改善された機能に注目し、その紹介と簡単な検証をする連載です。 RDBは枯れた技術と評されることが多いですが、PostgreSQLは1年ごとにメジャーアップデートがあり、その度に多くの機能追加や改善が施されています。 本連載では膨大な改善の中から特定の機能に着目し、各メジャーバージョンでどのような改

AWS CDK実行環境をCloudFormationで用意する

こんにちは、エンジニアの籏野です。 フォルシアでは主にAWS上に用意した環境にアプリをデプロイしており、初期のころはCloudFormationのテンプレートを書いて環境を構築していました。 近年ではAWS CDKを利用することが多くなってきており、単なるYAML等の設定ファイルではなく自分たちに馴染みのある言語で環境を記載できてとても便利に感じています。 AWS CDKを利用して

React useを触ってみた

まえがき エンジニアの恒川です。 私は現在Next.js App Routerを用いたアプリケーション開発をしています。Next.js 15からReact 19の使用が始まることを受けて、Reactのuse APIでどんなことができるのか実際に触ってみました。 use https://react.dev/reference/react/use use.tsx import { use } from 'react'; function MessageComponent({ messagePromise }) { const message = use(messagePromi

新しいおもちゃを見つけたいエンジニア必見:私がやっている情報収集

はじめに こんにちは、エンジニアの奥田です。 私は新しいものが大好きです。新しいものは既存の問題を解決してくれたり、新しい視点を与えてくれたりするからですね。 新しい技術や商品、アプリ……どれも最高です!「早く知って遊びたい!」という気持ちがあります。 ただ、知らないことには遊べないので、私は情報収集に力を入れています。 この記事では、そ

Rustの並列処理で安全にログ出力する

こんにちは、エンジニアの澤田です。 昨年は Rust の quick-xml というライブラリを使ってみた記事 を書きましたが、Rust の勉強を兼ねて、今回は並列処理をやってみようと思います。 普段の業務で、外部のAPIへ並列でリクエストを送り、その際に受け取ったエラーメッセージなどをログに書き込む処理を行っていますが、並列処理でのログ出力を Rust でやってみようと思い

Next.js 15アップグレードで嵌った話

まえがき エンジニアの恒川です。 2024年10月に Next.js 15 安定版がリリースされました。キャッシュ戦略に大きな変更があったり、 Turbopack のstableが使えるようになったりなど気になる変更内容がたくさんありました。 私が所属するチームでは Next.js 14 を使ったアプリケーション開発をしていましたが、今回の Next.js 15 リリースを受けてバージョンアップを行いました。 14

Apacheの拡張モジュール「mod_qos」でアクセスが殺到しても落ちないwebサイトを作る

はじめに インターネット上でwebサイトを運用している方であれば、自身の管理するwebサイトに突然アクセスが殺到しwebサイトが高負荷になってヒヤヒヤしたり、実際にダウンさせてしまったという経験があるかもしれません。 アクセス数の見積もりやサーバのサイジングを慎重に行っていたとしても、インターネット上にサーバを公開している以上はアクセスが突如とし

Neovim で VS Code みたいにコーディングする

はじめまして、新卒1年目エンジニアの出口です。 私は以前 Visual Studio Code (VS Code) を使ってプログラムを書いていました。 VS Code はインストールしたらすぐに様々な言語でコーディングを始めることができ、便利です。 ただ、VS Code の統合ターミナル上のシェルと、VS Code のキーボードショートカットが干渉してしまうことが多い点では不便だったため、Neovim に移行しまし

18リポジトリをnpmからpnpmに移行した際の学び

はじめに こんにちは、エンジニアの力石です。 フォルシアでは商品販売プラットフォームwebコネクトを提供しており、私はその中の検索システム(検索領域)の開発・運用保守を行っています。 検索領域はマイクロサービスアーキテクチャで構築されており、機能毎(コンポーネント毎)にリポジトリを分けるマルチリポジトリ構成を採用しています。 そして最近、検索領域

高速データ変換とトランザクション処理を両立するためのデータベース設計

まえがき フォルシアでは長年検索に特化したアプリケーションを開発してきましたが、近年注力しているプラットフォームのwebコネクトにおいては検索領域に留まらず商品販売に求められるあらゆる機能を提供しています。 webコネクトにおいて、ほぼ全ての商材データを管理する領域が素材登録システム(造成領域)です。素材登録システムでは商品販売に必要な情報の

Honoを使ってNext.jsにPOSTページを実装しよう!

こんにちは、エンジニアの籏野です。 近年、弊社の作るWebアプリケーションはNext.jsを用いて開発されることが多いです。 Next.jsは高パフォーマンスなWebページを作るための様々な機能を内包したReactフレームワークであり、メジャーバージョンアップの際には次々と新しい機能が追加されています。 さて今回はとある事情により、POSTメソッドで描画されるページを実装し

【チートシート】psqlコマンドで全部やる

こんにちは、エンジニアの水野です。 突然ですが、みなさんコマンドライン操作はお好きですか? 私は特に、直感的かつ手軽にスクリプトを書いてタスクをこなせるようなコマンドが好きです。 たとえばPostgreSQLを日常的に利用するDBプロフェッショナルは数多いるとはいえ、 「psqlコマンドをフルに使いこなしているよ」という方は意外と少ないのではないでしょうか。

エラータイトル

エラー本文

エラータイトル

エラー本文