Portfolio

Laravel / PHPを中心に、Webアプリケーション制作に取り組んでいます。制作物を通して、認証機能・CRUD処理・データベース連携などを学習しています。

About / 自己紹介

現在は医療職として勤務しながら、Webアプリ開発を学習しています。医療職で培った丁寧な確認や報連相を活かし、小さな修正や動作確認にも一つひとつ確実に取り組んでいきたいと考えています。

Projects / 制作物

メイン制作物

勤怠管理アプリの画面

勤怠管理アプリ

一般ユーザーの出退勤・休憩登録、勤怠修正申請、 管理者による勤怠確認・承認に対応した勤怠管理アプリです。

使用技術

Laravel PHP MySQL HTML CSS Docker PHPUnit Git

主な機能

  • 出退勤 / 休憩登録、日次 / 月次勤怠一覧
  • 勤怠修正申請、管理者承認
  • スタッフ別勤怠確認、CSV出力

課題と解決策:データの整合性を保つ承認処理

「勤怠修正申請の二重承認」という実務上のリスクを防ぐため、 承認処理に lockForUpdate()を使用しました。 承認対象の申請データを処理中にロックすることで、 同じ申請が同時に更新されることを防ぎ、 データの整合性を保つようにしています。

※デモアカウント情報は各ログイン画面に記載しています。

フリーマーケットアプリの画面

フリーマーケットアプリ

商品の検索・出品・購入に加えて、いいねやコメント、 Stripe決済に対応したフリーマーケットアプリです。

使用技術

Laravel PHP MySQL HTML CSS Docker Stripe PHPUnit Git

主な機能

  • 商品一覧 / 検索 / 出品、商品詳細
  • いいね / コメント、プロフィール編集
  • Stripeによる購入処理

課題と解決策:購入処理の制御

自分が出品した商品の購入を防ぐため、 ControllerでログインユーザーIDと出品者IDを比較しました。 一致する場合は購入処理を行わず商品一覧へリダイレクトし、 意図しない購入データが登録されないようにしています。

※デモアカウント情報は各ログイン画面に記載しています。

その他の制作物

体重管理アプリの画面

体重管理アプリ

体重記録の登録・検索・更新・削除に対応した 体重管理アプリです。日々の記録を管理し、 過去データを確認できる機能を実装しています。

Laravel PHP MySQL HTML CSS
GitHubを見る
在庫管理アプリの画面

在庫管理アプリ

商品の登録・検索・更新・削除に対応した 在庫管理アプリです。商品情報を管理する CRUD処理の基本的な実装を行っています。

Laravel PHP MySQL HTML CSS
GitHubを見る

Skills / スキル

Laravel

Eager Loadingを用いたN+1問題への対策を行っています。 承認処理ではlockForUpdate()を使用し、 同時更新によるデータ不整合を防ぐ処理も実装しています。

PHP

条件分岐やフォーム処理、データベース連携など、 入力内容に応じた処理の実装に使用しています。

MySQL

外部キーやユニーク制約を用いてテーブルを設計し、 データの関連性や整合性を意識しています。

HTML

ページやフォームの作成など、 Webアプリやポートフォリオの画面構築に使用しています。

CSS

FlexboxやGridを用いたレイアウト調整、 スマートフォン向けのレスポンシブ対応を行っています。

Git

差分確認、コミット、ブランチ操作など、 制作物のバージョン管理に使用しています。

GitHub

リポジトリ管理やREADMEの整備を行い、 制作物のソースコードを公開しています。

Docker

nginx・PHP・MySQLをDockerで構成し、 Laravelの開発環境として使用しています。

WordPress

ポートフォリオサイトを制作し、 HTML・CSSによる調整や公開環境への反映を行っています。

Goals / 今後の目標

Laravel / PHP の学習を継続しながら、小さな実装や修正にも丁寧に取り組めるよう経験を積んでいきたいです。基礎を大切にしながら、新しい言語や技術にも少しずつ取り組み、対応できる範囲を広げていきたいです。

Contact / 連絡先

Mail

お仕事のご相談・ご連絡はこちらからお願いいたします。

メールを送る