Nexync(ネクシンク)- 1つのIDで、すべての業務へ。組織と人を繋ぐ、セキュアで快適な社内システム共通基盤。
1. 概要
Nexync(ネクシンク)は、企業・組織内で稼働する複数のWebアプリケーション(社内システム)を束ねる統合ID・アプリポータル基盤です。
軽量なPHPとSQLiteのみで動作し、複雑なサーバー構築やミドルウェア(MySQLやRedisなど)を一切必要としません。ファイルをWebサーバーにアップロードするだけで、即座にエンタープライズ品質の「シングルサインオン(SSO)」「ゼロトラスト・セキュリティ」「組織図・社員マスタ」を構築できるフリーソフトです。
1.1.名称の由来:
「Nexus (核心・結びつき) + Sync (同期)」の造語。組織内の人とシステムを中央で結びつけ、常に最新の状態で同期させるという役割を表しています。
1.2. 主な特徴
- 完全ゼロコンフィグ: データベースは初回アクセス時に自動生成され、連携する社内アプリも自動でスキャン・検知されます。面倒な設定ファイル(.env等)の編集は不要です。
- シングルサインオン (SSO): 一度のログインで、連携するすべての社内システムへ安全にアクセスできます。
- 強固なセキュリティ: ミリタリーグレードの自動CSRF防御、プロキシ対応IP解決、ブルートフォース防御、セッションの強制破棄機能などを標準搭載。
- オフライン・ファースト: ネットワークが遮断されても操作データを端末内に暗号化して一時保存し、復帰時にバックグラウンドで自動同期します。
- PWAとテーマ同期: スマホアプリのようにインストール可能。管理画面から色を変えるだけで、システム全体のカラーとアプリアイコンが全自動で即座に再生成されます。
2. 動作環境
- Webサーバー: Apache, Nginx などの一般的なWebサーバー
- PHP: バージョン 8.0 以上(8.3 推奨)
- 必須拡張モジュール: sqlite3, pdo_sqlite, gd, mbstring
- データベース: SQLite3 (ファイルベースのため別途インストール不要)
- クライアント: 最新の Google Chrome, Edge, Safari, Firefox
3. インストール手順
Nexyncは、既存の環境を汚さずに独立して動作するよう設計されています。
Step 1: ファイルの配置
ダウンロードした nexync フォルダ一式を、Webサーバーの公開ディレクトリ(ドキュメントルート)内の任意の場所にアップロードします。
推奨される配置例は以下の通りです。
/var/www/html/
├── nexync/ <– このフォルダを丸ごとアップロード
├── fleet/ <– 連携させたい他の社内システム
└── mileage/ <– 連携させたい他の社内システム
Step 2: データディレクトリの書き込み権限付与
Nexyncは、セキュリティのため公開ディレクトリ(html/)の1つ上の階層(上記例なら /var/www/ 直下)に、データ保存用の nexync_data フォルダを自動作成しようとします。
自動作成に失敗する場合は、手動で nexync_data フォルダを作成し、Webサーバー(www-data や apache 等)が書き込める権限(例: chmod 755 または 777)を付与してください。
Step 3: 初回アクセスと自動セットアップ
ブラウザからNexyncのURL(例: https://your-domain.com/nexync/)にアクセスします。
この瞬間、システムが自律的にデータベースの構築とマイグレーションを行い、ログイン画面が表示されます。
4. ログインとセットアップ
初回起動時、セキュリティのため初期管理者のパスワードは完全なランダム文字列で生成され、サーバー内部にテキストファイルとして保存されます。
Step 1: 初期パスワードの確認
サーバー上のデータ保存ディレクトリ(nexync_data/)の中に、initial_admin_password.txt というファイルが生成されています。このファイルを開き、初期パスワードを確認してください。
Step 2: 初回ログイン
ブラウザのログイン画面にて、以下の情報でログインします。
- 社員ID: admin
- パスワード: (テキストファイルに記載されたランダムな文字列)
Step 3: セキュリティのためのパスワード変更 (必須)
- ログイン後、サイドメニューから「マイページ」を開きます。
- 「現在のパスワード」に初期パスワードを入力し、「新しいパスワード」をご自身の任意のパスワードに変更して保存してください。
- 【重要】 変更完了後、サーバー上の nexync_data/initial_admin_password.txt は必ず削除してください。
5. 運用と管理
システム管理者(初期の admin アカウント)は、以下の手順で組織のセットアップを行います。
- システム設定: サイドメニューの「システム設定」から、会社情報やテーマカラーを設定します。保存するとPWAアイコンが自動生成されます。
- 部署・役職マスタ: 「部署マスタ」「役職マスタ」から、会社の組織図や連絡先を登録します。
- 社員の招待 (オンボーディング):
- 「社員マスタ」から「新規登録」をクリックします。
- 対象者の「社員ID」「氏名」「所属」などを入力して保存します。
- システム権限は「システム管理者」「管理者」「一般」とあり、「システム管理者」は全機能にアクセス可能、「管理者」は制限されていり機能のみアクセス可能、「一般」は使用に必要な機能のみアクセス可能となっています。
- アカウント状態は、「有効」と「無効」があり退職や休職の場合に「無効」にするとログイン不可となります。
- 保存後、その社員専用の「パスワード設定用ワンタイムURL」が発行されます。
- このURLを対象の社員にチャット等で共有し、本人に初回パスワードを設定させてください(URLの有効期限は30分です)。
6. 連携アプリ(子システム)の追加方法
Nexyncは「ゼロコンフィグ・スキャナー」を搭載しています。Nexyncディレクトリと同じ階層にある他のフォルダを自動的にスキャンし、アプリとしてポータルに表示します。
- nexync フォルダと同じ階層に、連携したいアプリのフォルダ(例: mileageflow)を配置します。
- これだけで、Nexyncの「アプリポータル」画面に自動的にアプリが追加・表示されます。データベースへの手動登録は一切不要です。
7. ディレクトリ構造
Nexyncのプログラム本体のファイル構成です。Pure MVCアーキテクチャに基づき、各責務が明確に分離されています。
nexync/
├── index.html # メインUI(SPAコンテナ・View定義)
├── manifest.json # PWA設定ファイル(動的に上書きされます)
├── sw.js # サービスワーカー(オフラインキャッシュ制御)
├── style.css # ネイティブCSSスタイル
├── tailwind-config.js # Tailwind CSSのカスタム設定(色変数の紐付け)
├── theme.php # 動的テーマカラーCSS変数注入エンジン
│
├── api/ # バックエンドAPI群 (Controller/Model)
│ ├── auth.php # 認証・SSOトークン発行・検証
│ ├── users.php # 社員マスタのCRUD
│ ├── org.php # 部署・役職マスタのCRUD
│ ├── calendar.php # 会社カレンダーのCRUD・自動計算
│ ├── settings.php # システム設定の保存
│ ├── apps.php # 連携アプリの自動スキャン
│ ├── audit.php # 監査ログの取得
│ ├── backup.php # DBの防爆エクスポート・インポート
│ ├── icon.php # GDライブラリによる高画質PWAアイコン動的生成
│ ├── sync_icon.php # PWAアセット同期ゲートウェイ
│ └── db.php # [中核基盤] DB接続, マイグレーション, CSRF・セッション防御
│
├── assets/ # フロントエンド・アセット
│ └── js/
│ ├── core.js # [Model] 状態管理(AppState)、API通信ラッパー
│ ├── ui.js # [View] DOM操作、HTMLテンプレート生成、UIレンダラー
│ └── controllers.js # [Controller] イベントバインド、ビジネスロジック、画面遷移
│
├── sdk/ # 子システム連携用SDK
│ ├── nx-core.php # PHPバックエンド用 セキュリティ・SSO連携SDK
│ └── nx-ui.js # JSフロントエンド用 通信・オフライン・UIコンポーネントSDK
│
└── docs/ # ドキュメントディレクトリ
├── CHANGELOG.md # 変更履歴(システム設定画面から参照可能)
├── specification.md (基本仕様書)
└── API-SDK_specification.md(統合API_SDK連携仕様書)
(システム稼働時、本ディレクトリとは別のセキュアな領域に nexync_data/ フォルダが生成され、データベース nexync.sqlite3 やアイコンのキャッシュファイルなどが保存されます)
8. ダウンロードは下記ボタンから
最近のお気に入りの曲
「SUPERBLOOD」の「RESCUE ME」 これも良い曲だなあ。



