Skip to content

Commit

Permalink
chore: add readme & document site (#25)
Browse files Browse the repository at this point in the history
* chore: add readme

* feat: mkdocsをセットアップ

* docs: 自動起動ページ以外書いた

* Update docs/installation/go-install.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: いろいろ書いた

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • Loading branch information
book000 and Copilot authored Nov 16, 2024
1 parent f96c29d commit 156ce36
Show file tree
Hide file tree
Showing 41 changed files with 774 additions and 5 deletions.
39 changes: 39 additions & 0 deletions .github/workflows/doc-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Doc Build

on:
push:
branches:
- master
pull_request:
branches:
- master

jobs:
build:
name: Build
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.9

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Build
run: |
python -m mkdocs build --verbose --clean --strict
- name: Upload Pages-artifact
uses: actions/upload-pages-artifact@v3
with:
path: site
51 changes: 51 additions & 0 deletions .github/workflows/doc-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Doc Deploy

on:
workflow_dispatch:
push:
branches:
- master

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.9

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Build
run: |
python -m mkdocs build --verbose --clean --strict
- name: Upload Pages-artifact
uses: actions/upload-pages-artifact@v3
with:
path: site

deploy:
runs-on: ubuntu-latest
needs: build
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,9 @@ go.work.sum
# test files
test/
data/

# virtual env
venv/
.venv/

site/
42 changes: 42 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# splashscreen-changer

EasyAntiCheat を使用しているアプリケーションにおいて、起動時に表示されるスプラッシュスクリーンを以下のように変更するアプリケーションです。
VRChat に対しての利用を想定していますが、他のアプリケーションでも利用できます。

![](docs/assets/customized-splashscreen.png)

## ✨ 特徴

- 起動するごとに用意した画像からランダムで設定
- 用意する画像は事前にリサイズ・クロップする必要なく、自動で処理
- EasyAntiCheat を利用しているアプリケーションであれば VRChat 以外でも利用可能
- VRChat 用に利用する場合は設定ファイルの作成をせずに使い始められる
- 単一の実行ファイルで動作可能

## 🚀 インストール手順

本アプリケーションのインストールには、いくつかの方法があります。
具体的なインストール方法については、リンク先をご覧ください。

- [実行ファイル (exe) によるポータブルインストール](installation/portable.md) (おすすめ)
- [Scoop によるインストール](installation/scoop.md)
- [go install によるインストール](installation/go-install.md)

## 🛠️ 設定

このアプリケーションの動作をカスタムしたい場合は、設定ファイルが必要になります。
設定方法については、[設定ファイル](settings/file.md) ページをご覧ください。

また、このアプリケーションは、実行するたびにランダムに画像を設定します。
そのため、なんらかの条件で定期的にスプラッシュスクリーンを変えたいという場合は、[自動起動](settings/autostart/index.md) 設定が必要です。

## 🎁 寄付

このプロジェクトでは、寄付を受け付けています。以下の方法で寄付が可能です。

- Booth: 準備中
- GitHub Sponsor: [@book000](https://github.com/sponsors/book000)

## 📑 ライセンス

このプロジェクトのライセンスは [MIT License](LICENSE) です。
12 changes: 8 additions & 4 deletions cmd/splashscreen-changer/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ func listPNGFiles(root string, isRecursive bool) ([]string, error) {
return pngFiles, nil
}

// PNGファイルリストからランダムに1つ選択する関数
// PNGファイルリストからラダムに1つ選択する関数
func pickRandomFile(files []string) (string, error) {
if len(files) == 0 {
return "", fmt.Errorf("no PNG files found")
Expand Down Expand Up @@ -97,8 +97,12 @@ func cropToAspectRatio(img image.Image, width, height int) image.Image {
return dst
}

// PNGファイルをリサイズする関数
// 同じアスペクト比でない場合、元の画像を中心を基準に切り取る
// resizePNGFileは、指定されたPNG画像を指定の幅と高さにリサイズし、保存します。
// リサイズの際、元の画像のアスペクト比が異なる場合は、中央を基準にクロップ(切り取り)します。
// - srcPath: 元のPNGファイルのパス
// - destPath: リサイズ後のPNGファイルの保存先パス
// - width: リサイズ後の画像の幅
// - height: リサイズ後の画像の高さ
func resizePNGFile(srcPath, destPath string, width, height int) error {
srcFile, err := os.Open(srcPath)
if err != nil {
Expand Down Expand Up @@ -146,7 +150,7 @@ func isGoRun() bool {
}

func getConfigPath(configParamPath *string) string {
// 設定ファイルパスは環境変数 CONFIG_PATH または引数 -config で指定し、指定されていない場合は "data/config.yaml" とする。
// 設定ファイルパスは環境変数 CONFIG_PATH または引数 -config で指定し、指定されていない場合は "data/config.yml" とする。
// "data/config.yml" の場所は、実行ファイルと同じディレクトリにあるものとする。go runで実行する場合は、カレントディレクトリにあるものとする。
if *configParamPath != "" {
return *configParamPath
Expand Down
2 changes: 1 addition & 1 deletion config.yaml.sample
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
source:
path: C:\Users\{Username}\Pictures\VRChat
path: C:\Users\{Username}\Pictures\VRChat\splashscreen-photos\
recursive: true
destination:
path: C:\Program Files (x86)\Steam\steamapps\common\VRChat
Binary file added docs/assets/customized-splashscreen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/default-splashscreen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions docs/css/extra.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
.md-footer__inner {
display: none !important;
}

div.md-sidebar.md-sidebar--primary nav.md-nav--primary > label {
display: none !important;
}
42 changes: 42 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# splashscreen-changer

EasyAntiCheat を使用しているアプリケーションにおいて、起動時に表示されるスプラッシュスクリーンを以下のように変更するアプリケーションです。
VRChat に対しての利用を想定していますが、他のアプリケーションでも利用できます。

![](assets/customized-splashscreen.png)

## ✨ 特徴

- 起動するごとに用意した画像からランダムで設定
- 用意する画像は事前にリサイズ・クロップする必要なく、自動で処理
- EasyAntiCheat を利用しているアプリケーションであれば VRChat 以外でも利用可能
- VRChat 用に利用する場合は設定ファイルの作成をせずに使い始められる
- 単一の実行ファイルで動作可能

## 🚀 インストール手順

本アプリケーションのインストールには、いくつかの方法があります。
具体的なインストール方法については、リンク先をご覧ください。

- [実行ファイル (exe) によるポータブルインストール](installation/portable.md) (おすすめ)
- [Scoop によるインストール](installation/scoop.md)
- [go install によるインストール](installation/go-install.md)

## 🛠️ 設定

このアプリケーションの動作をカスタムしたい場合は、設定ファイルが必要になります。
設定方法については、[設定ファイル](settings/file.md) ページをご覧ください。

また、このアプリケーションは、実行するたびにランダムに画像を設定します。
そのため、なんらかの条件で定期的にスプラッシュスクリーンを変えたいという場合は、[自動起動](settings/autostart/index.md) 設定が必要です。

## 🎁 寄付

このプロジェクトでは、寄付を受け付けています。以下の方法で寄付が可能です。

- [Booth](https://tomachi.booth.pm/items/6284870)
- GitHub Sponsor: [@book000](https://github.com/sponsors/book000)

## 📑 ライセンス

このプロジェクトのライセンスは [MIT License](https://github.com/tomacheese/splashscreen-changer/blob/master/LICENSE) です。
5 changes: 5 additions & 0 deletions docs/installation/.pages
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: インストール
nav:
- portable.md
- scoop.md
- go-install.md
Binary file added docs/installation/assets/exe-drag-and-drop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/installation/assets/release-page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
45 changes: 45 additions & 0 deletions docs/installation/go-install.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# go install によるインストール

このページでは、splashscreen-changer を go install コマンドでインストールする場合の手順について説明しています。

## 1. コマンドを実行してインストール

以下のコマンドを実行してインストールします。

```powershell
go install github.com/tomacheese/splashscreen-changer/cmd/splashscreen-changer@latest
```

インストールが完了すると、splashscreen-changer は以下の場所にインストールされます。

```text
C:\Users\%USERNAME%\go\bin
```

## 2. 設定ファイルの作成

このアプリケーションは、なにも設定しない場合次のような動作をします。
**これらの動作を変更したい場合は、設定ファイルの作成が必要** です。そうでない場合は、次に進んでください。

- 元画像のフォルダ: ピクチャーフォルダ内の VRChat フォルダ(VRChat 内でカメラを使って写真を撮った時に保存されるフォルダ)
- スプラッシュスクリーンを変更するアプリケーション: VRChat
- 変換後の画像サイズ: 800x450

!!! tips
あなたが、「VRChat 内で撮った写真の中からランダムで画像を選んで、VRChat 起動時に出てくるスプラッシュスクリーンにしたい!」のであれば、このままで大丈夫です。
そうではなく、**選別した画像の中からランダムで選んでほしい場合** や、**VRChat 以外の EasyAntiCheat が導入されたアプリケーションで利用したい場合** は、設定ファイルの作成が必要になります。

設定ファイルに関して詳しくは、[設定ファイル](../settings/file.md) ページをご覧ください。

## 5. 自動起動の設定

このアプリケーションは、実行するたびにランダムに画像を設定します。
そのため、なんらかの条件で定期的にスプラッシュスクリーンを変えたいという場合は、設定が必要です。

以下の方法をおすすめしています。

1. スタートアップへ登録し、PC が起動するたびに画像が変更される
2. タスクスケジューラーを用いて、定期的に画像が変更される
3. VRCX の「アプリケーションの自動起動」機能を用いて、VRChat が起動するたびに画像が変更される

これらの具体的な設定方法については、[自動起動](../settings/autostart/index.md) ページをご覧ください。
7 changes: 7 additions & 0 deletions docs/installation/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# インストール

本アプリケーションのインストールには、いくつかの方法があります。以下からお好きなものをお選びください。

- [実行ファイル (exe) によるポータブルインストール](portable.md) (おすすめ)
- [Scoop によるインストール](scoop.md)
- [go install によるインストール](go-install.md)
55 changes: 55 additions & 0 deletions docs/installation/portable.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# 実行ファイルによるポータブルインストール

このページでは、splashscreen-changer を実行ファイルによるポータブルインストールする場合の手順について説明しています。

!!! info "Windows 以外の OS を利用している方へ"
このアプリケーションは複数の OS に対応しています。
しかしながら、このページにおいては便宜上 Windows 64 bit 環境を使用しているユーザー向けに記載しています。
他の OS を利用している場合は、適宜読み替えてください。

## 1. リリースページにアクセスしダウンロード

まず、[リリースページ](https://github.com/tomacheese/splashscreen-changer/releases/latest) にアクセスします。

アクセスすると以下のように、Assets という欄があります。
ここから `splashscreen-changer_Windows_x86_64.zip` を探し、クリックしてください。

![](assets/release-page.png)

## 2. ダウンロードしたファイルを展開し任意の場所に格納

ダウンロードしたファイルをダブルクリックして開くと、中に `splashscreen-changer.exe` というファイルがあります。
設定によっては最後の `.exe` は表示されていないかもしれません。
このファイルをコピーし、お好きなところにペーストしてください。

ここでは、ユーザーフォルダに `splashscreen-changer` というフォルダを作成し、その中にペーストしました。

![](assets/exe-drag-and-drop.png)

## 4. 設定ファイルの作成

このアプリケーションは、なにも設定しない場合次のような動作をします。
**これらの動作を変更したい場合は、設定ファイルの作成が必要** です。そうでない場合は、次に進んでください。

- 元画像のフォルダ: ピクチャーフォルダ内の VRChat フォルダ(VRChat 内でカメラを使って写真を撮った時に保存されるフォルダ)
- スプラッシュスクリーンを変更するアプリケーション: VRChat
- 変換後の画像サイズ: 800x450

!!! tips
あなたが、「VRChat 内で撮った写真の中からランダムで画像を選んで、VRChat 起動時に出てくるスプラッシュスクリーンにしたい!」のであれば、このままで大丈夫です。
そうではなく、**選別した画像の中からランダムで選んでほしい場合** や、**VRChat 以外の EasyAntiCheat が導入されたアプリケーションで利用したい場合** は、設定ファイルの作成が必要になります。

設定ファイルに関して詳しくは、[設定ファイル](../settings/file.md) ページをご覧ください。

## 5. 自動起動の設定

このアプリケーションは、実行するたびにランダムに画像を設定します。
そのため、なんらかの条件で定期的にスプラッシュスクリーンを変えたいという場合は、設定が必要です。

以下の方法をおすすめしています。

1. スタートアップへ登録し、PC が起動するたびに画像が変更される
2. タスクスケジューラーを用いて、定期的に画像が変更される
3. VRCX の「アプリケーションの自動起動」機能を用いて、VRChat が起動するたびに画像が変更される

これらの具体的な設定方法については、[自動起動](../settings/autostart/index.md) ページをご覧ください。
Loading

0 comments on commit 156ce36

Please sign in to comment.