-
LibreChatをセルフホスティングして社内利用できるようにしました
開発
こんにちは、開発部でバックエンドエンジニアをしている田中 湧大(@Romira915)です。 今回は社内向けのAIチャットボットツールとしてOSSのLibreChatをセルフホストして公開したのでその紹介をします。 【LibreChatを新たにセルフホストした理由】 弊社では以前からOSSのchatbot-uiをCloud Runにセルフホストしていました。 https://developers.prtimes.com/2023/04/05/use-chatbot-ui/ しかしchatbot-uiはいくつかの課題がありました。 運用していたバージョン(ver1系)ではGPT-4oやGPT-4o miniなどの最新のモ... -
入力項目の多いフォームをReactにリプレイスする際に工夫したこと
開発
こんにちは、フロントエンドエンジニアのやなぎ( @apple_yagi )です。 先日、PR TIMES上で企業アカウントを作成する際に情報を入力する企業登録申請フォームをReact + Viteにリプレイスしました。 https://prtimes.jp/main/registcorp/form 本エントリーではリプレイスするにあたり、使用したライブラリや、工夫した点などをご紹介します。 【企業登録申請フォームをリプレイスする難しさ】 企業登録申請フォームは入力項目が30項目あり、データ量が多いフォームとなっています。このようなフォームを... -
PHPStanのレベルを変更することなく引数の型検査ルールを追加した話
開発
皆さんこんにちは、開発本部でインターンをしている石田です。 今回はバックエンド側で導入しているPHPStanというツールにレベルを変更することなくルールを追加した話とその方法についてお話します。 【PHPStanとは】 PHPStanはPHPのコードに対して実行時エラーや問題となるような部分をコードを実行せずに検査できるツールです。設定をすることでエディタ上で警告を行ったり、CIで解析を行って警告を出すことができるようになり、人間がプログラム上の問題を見落としてしまうことを防げます。 レベル設定につい... -
PR TIMES のトップページ のアクセシビリティ改善をしました。
開発
こんにちは PR TIMES開発本部のインターンの Chanoknan です。 PR TIMES のトップページのアクセシビリティ改善に取り組みました。具体的にどのような改善を行ったのかについてお話しします。 【アクセシビリティとは?】 アクセシビリティとは、ウェブサイトやアプリケーションをすべての人が利用できるようにすることを指します。ここで「すべての人」とは、視覚や聴覚に障害のある人、高齢者、身体的な制約のある人、さらには一時的な障害(例:腕を骨折している、騒がしい場所にいる)を持つ人々も含まれます... -
Gmailの送信者ガイドラインへの対応: ワンクリック解除機能の導入
QA
皆さんこんにちは、バックエンドエンジニアをしている永井です。Gmailの「メール送信者のガイドライン」が更新され、ユーザーがワンクリックで解除できる機能を必要とする旨が示されました。これに対応するために一部メールでワンクリック解除機能を導入しましたので、今回はその実装方法とリリース前後で苦労した話について書いていきます。 【ワンクリック解除機能の実装について】 ワンクリック解除機能を実現するにあたって、メール送信時に新たに付与したList-UnsubscribeヘッダーとList-IDヘッダーについて... -
営業・CR・開発がコミュニケーションを取る場を新たに設けた話 Phase1
チーム体制
私たちの組織では、顧客接点の部署である営業部・CR(カスタマーリレーションズ)部と、開発側が密に連携し、PR TIMESというサービスをさらに良くしていくための新しい会議体を設けました。 これにより、お互いの目標と課題を理解し、より効果的に協働することが可能になりました。 【背景】 こんにちは。PR TIMES開発部プロダクトチームでプロダクトマネージャー(PdM)をやっている渡邉です。 私は2023年2月に初の中途採用PdMとして入社しました。 以前にPdMとしての実務経験は無く、未経験枠で採用して頂きまし... -
OpenSearchの検索速度を向上させる話
開発
皆さんこんにちは!PR TIMESの開発部のThaiです。今回はどうやってOpenSearch検索速度を改善したかについて話します。 【はじめに】 現在、Webクリッピングでは記事データをOpenSearchに保存して検索機能で使っています。 Webクリッピングとは、さまざまなサイトから記事をクロールし、ユーザーが設定したキーワードが含まれる記事をクリップすることで、メディア露出の調査や分析を行うことができるWebアプリケーションです。 Webクリッピングではユーザーが複数のキーワードを同時に検索できるようになっており... -
株式会社グルコースへ1ヶ月間グループ内留学しました!
グループ内交流
こんにちは、開発部の松浦です。今回は、PR TIMESのグループ会社である株式会社グルコースへ1ヶ月間グループ内留学をした時の話をしていこうと思います。 【きっかけ】 始まりはCTOの金子と1on1した時に、グループ内留学について知ったことがきっかけでした。株式会社グルコースでは主に受託案件を取り扱っており、グループ内留学として期間中はその案件に携わることができるというものでした。受託案件では自社開発と違ってどのような開発スタイルかどうか興味があり、やってみたいと考えていました。 それ以外に... -
プレスリリースを受信したいメディア関係者向けのマイページをリプレイスしました
開発
こんにちは、開発チーム・バックエンドエンジニアのSongです。 最近、プレスリリースを受信したいメディア関係者(メディアユーザー)向けのマイページを PHP + Smarty + jQuery から PHP + React にリプレイスしました。 メディアユーザーのマイページ - メイン機能 このプロジェクトではリーダーとして挑戦しました。今回は、プロジェクトをどのように進行したか、そして初めてリーダーとして挑戦してうまくできたことや悔しかったことについてシェアしたいと思います。 ちなみに、PR TIMESのメディアユーザーに... -
PHPカンファレンス福岡2024に協賛・登壇しました!
カンファレンス
【シルバースポンサーとして協賛しました!】 PR TIMESはPHPカンファレンス福岡2024にシルバースポンサーとして協賛しました。公式Xアカウントよりご紹介いただきました。 https://twitter.com/phpcon_fukuoka/status/1802627247003799552 参加前のブログも公開しております。こちらよりご覧ください。 https://developers.prtimes.com/2024/05/17/php-conference-fukuoka-before/ 【非公式前日イベントを開催しました!】 PR TIMESはPHPカンファレンス福岡2024に先立ち、非公式の前夜祭を行いました。 お陰様で、...
