12 Commits

Author SHA1 Message Date
Gitea Actions
4e280796b9 Update manifest version to 3.1.2 [▶️] 2026-01-09 14:51:04 +00:00
a54f52b04e Update README.md
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 10m50s
2026-01-09 14:46:04 +00:00
Gitea Actions
40fe720d3f Update manifest version to 3.1.1 [▶️] 2026-01-09 14:42:53 +00:00
65639a2f04 Update public/index.html
Some checks failed
Build, Push, Publish / Build & Release (push) Has been cancelled
2026-01-09 14:42:41 +00:00
Gitea Actions
f74d9038b7 Sync README from template [▶️] 2026-01-01 04:01:51 +00:00
Gitea Actions
14acaf3c62 Sync README from template [▶️] 2025-12-28 04:02:51 +00:00
Gitea Actions
d475f88ab9 Update manifest version to 3.1.0 [▶️] 2025-12-22 05:32:22 +00:00
465c0c11e9 fix release build, add readme update for some repo
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 10m6s
2025-12-22 01:43:50 -03:00
Gitea Actions
cf860814c5 Sync README from template [▶️] 2025-12-22 04:02:04 +00:00
Gitea Actions
633ce7c550 Update manifest version to 3.0.5 [▶️] 2025-12-22 03:00:21 +00:00
e458f278b1 Merge branch 'main' of https://git.icc.gg/ivancarlos/devicetester
All checks were successful
Build, Push, Publish / Build & Release (push) Successful in 10m9s
2025-12-21 23:33:49 -03:00
efb940fc8c update actions 2025-12-21 23:33:45 -03:00
5 changed files with 104 additions and 42 deletions

View File

@@ -5,9 +5,6 @@ on:
branches: branches:
- main - main
workflow_dispatch: workflow_dispatch:
schedule:
- cron: '28 5 * * *'
# workflow_run support in Gitea can be tricky, keeping it but might need adjustment
workflow_run: workflow_run:
workflows: ["Sync Repo"] workflows: ["Sync Repo"]
types: types:
@@ -265,6 +262,11 @@ jobs:
git commit -m "Update manifest version to ${{ steps.version.outputs.VERSION }} [▶️]" || echo "Nothing to commit" git commit -m "Update manifest version to ${{ steps.version.outputs.VERSION }} [▶️]" || echo "Nothing to commit"
git push origin main git push origin main
- name: 🛠 Install zip
if: steps.check_commits.outputs.commit_count != '0'
run: |
apt-get update && apt-get install -y zip
- name: 📦 Create ZIP package (excluding certain files) - name: 📦 Create ZIP package (excluding certain files)
if: steps.check_commits.outputs.commit_count != '0' if: steps.check_commits.outputs.commit_count != '0'
run: | run: |
@@ -319,18 +321,17 @@ jobs:
ZIP_NAME="${{ steps.version.outputs.ZIP_NAME }}" ZIP_NAME="${{ steps.version.outputs.ZIP_NAME }}"
FILE_PATH="./$ZIP_NAME" FILE_PATH="./$ZIP_NAME"
curl -s -X POST "${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/$RELEASE_ID/assets" \ curl --fail -s -X POST "${{ gitea.api_url }}/repos/${{ gitea.repository }}/releases/$RELEASE_ID/assets?name=$ZIP_NAME" \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
-H "Content-Type: application/zip" \ -H "Content-Type: application/zip" \
--data-binary @"$FILE_PATH" \ --data-binary @"$FILE_PATH"
-o /dev/null
# ----- Docker steps ----- # ----- Docker steps -----
- name: Clone Upstream Code (if needed) - name: Clone Upstream Code (if needed)
if: steps.check_commits.outputs.commit_count != '0' && (steps.check_upstream.outputs.upstream_needs_update == 'true' || steps.check_upstream.outputs.repo_url != '') if: steps.check_commits.outputs.commit_count != '0' && (steps.check_upstream.outputs.upstream_needs_update == 'true' || steps.check_upstream.outputs.repo_url != '')
run: | run: |
rm -rf upstream_src rm -rf upstream_src
git clone --depth 1 --branch ${{ steps.check_upstream.outputs.repo_branch }} ${{ steps.check_upstream.outputs.repo_url }} upstream_src git clone --depth 1 --branch ${{ steps.check_upstream.outputs.repo_branch }} ${{ steps.check_upstream.outputs.repo_url }} upstream_src
- name: 🔍 Check if Dockerfile exists - name: 🔍 Check if Dockerfile exists
if: steps.check_commits.outputs.commit_count != '0' || steps.check_upstream.outputs.upstream_needs_update == 'true' if: steps.check_commits.outputs.commit_count != '0' || steps.check_upstream.outputs.upstream_needs_update == 'true'

View File

@@ -0,0 +1,59 @@
name: Update README
permissions:
contents: write
on:
workflow_dispatch:
schedule:
- cron: "0 4 * * *" # Every day at 4 AM UTC
jobs:
update-readme:
runs-on: ubuntu-latest
container:
image: catthehacker/ubuntu:act-latest
env:
SOURCE_REPO: ivancarlos/.gitea
SOURCE_BRANCH: main
steps:
- name: Checkout current repository
uses: actions/checkout@v4
- name: Checkout source README template
uses: actions/checkout@v4
with:
repository: ${{ env.SOURCE_REPO }}
ref: ${{ env.SOURCE_BRANCH }}
token: ${{ secrets.CR_PAT }}
path: source_readme
- name: Update README.md (footer only)
run: |
set -e
# --- Extract footer block from source (everything from <!-- footer --> onward) ---
FOOTER=$(awk '/<!-- footer -->/{flag=1}flag' source_readme/README.md)
# --- Replace everything after <!-- footer --> with FOOTER ---
awk -v footer="$FOOTER" '
/<!-- footer -->/ {
print footer
found=1
exit
}
{ print }
' README.md > README.tmp && mv README.tmp README.md
- name: Remove source_readme from git index
run: rm -rf source_readme
- name: Commit and push changes
run: |
git config user.name "Gitea Actions"
git config user.email "actions@git.icc.gg"
git add README.md
git commit -m "Sync README from template [▶️]" || echo "Nothing to commit"
git push origin ${{ github.ref_name }}

View File

@@ -1,24 +1,25 @@
# Device Tester # Device Tester
A simple and useful webcam, microphone and audio output tester. A simple and useful webcam, microphone and audio output tester.
<!-- buttons -->
[![Stars](https://img.shields.io/github/stars/ivancarlosti/devicetester?label=⭐%20Stars&color=gold&style=flat)](https://github.com/ivancarlosti/devicetester/stargazers)
[![Watchers](https://img.shields.io/github/watchers/ivancarlosti/devicetester?label=Watchers&style=flat&color=red)](https://github.com/sponsors/ivancarlosti)
[![Forks](https://img.shields.io/github/forks/ivancarlosti/devicetester?label=Forks&style=flat&color=ff69b4)](https://github.com/sponsors/ivancarlosti)
[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ivancarlosti/devicetester?label=Activity)](https://github.com/ivancarlosti/devicetester/pulse)
[![GitHub Issues](https://img.shields.io/github/issues/ivancarlosti/devicetester?label=Issues&color=orange)](https://github.com/ivancarlosti/devicetester/issues)
[![License](https://img.shields.io/github/license/ivancarlosti/devicetester?label=License)](LICENSE)
[![GitHub last commit](https://img.shields.io/github/last-commit/ivancarlosti/devicetester?label=Last%20Commit)](https://github.com/ivancarlosti/devicetester/commits)
[![Security](https://img.shields.io/badge/Security-View%20Here-purple)](https://github.com/ivancarlosti/devicetester/security)
[![Code of Conduct](https://img.shields.io/badge/Code%20of%20Conduct-2.1-4baaaa)](https://github.com/ivancarlosti/devicetester?tab=coc-ov-file)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/ivancarlosti?label=GitHub%20Sponsors&color=ffc0cb)][sponsor]
<!-- endbuttons -->
## Notes ## Notes
1. Project inspired in multiple device complex testers across the web. 1. Project inspired in multiple device complex testers across the web.
2. The music used on test is royalty free and generated by AI. 2. The music used on test is royalty free and generated by AI.
3. The page was co-created by AI. 3. The page was co-created by AI.
## Docker Compose suggestion
```
name: devicetester
services:
devicetester:
image: git.icc.gg/ivancarlos/devicetester:latest
container_name: devicetester
restart: unless-stopped
ports:
- "3987:80"
```
<!-- footer --> <!-- footer -->
--- ---
@@ -29,17 +30,9 @@ A simple and useful webcam, microphone and audio output tester.
## 🩷 Project support ## 🩷 Project support
| If you found this project helpful, consider | | If you found this project helpful, consider |
| :---: | | :---: |
[**buying me a coffee**][buymeacoffee], [**donate by paypal**][paypal], [**sponsor this project**][sponsor] or just [**leave a star**](../..)⭐ [**buying me a coffee**][buymeacoffee] or [**supporting me on Patreon**][patreon]
|Thanks for your support, it is much appreciated!| |Thanks for your support, it is much appreciated!|
[cc]: https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project [ivancarlos]: https://ivancarlos.me
[contributing]: https://docs.github.com/en/articles/setting-guidelines-for-repository-contributors
[security]: https://docs.github.com/en/code-security/getting-started/adding-a-security-policy-to-your-repository
[support]: https://docs.github.com/en/articles/adding-support-resources-to-your-project
[it]: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
[prt]: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository
[funding]: https://docs.github.com/en/articles/displaying-a-sponsor-button-in-your-repository
[ivancarlos]: https://ivancarlos.it
[buymeacoffee]: https://www.buymeacoffee.com/ivancarlos [buymeacoffee]: https://www.buymeacoffee.com/ivancarlos
[paypal]: https://icc.gg/donate [patreon]: https://patreon.com/ivancarlos
[sponsor]: https://github.com/sponsors/ivancarlosti

View File

@@ -1,4 +1,4 @@
{ {
"version": "3.0.4", "version": "3.1.2",
"author": "Ivan Carlos" "author": "Ivan Carlos"
} }

View File

@@ -1,3 +1,4 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
@@ -51,6 +52,14 @@
margin-bottom: 30px; margin-bottom: 30px;
} }
#ipv4, #ipv6 {
word-break: break-all;
overflow-wrap: anywhere;
display: inline-block;
max-width: 100%;
vertical-align: top;
}
/* Shared styles for header buttons */ /* Shared styles for header buttons */
.theme-toggle, .theme-toggle,
.icon-btn { .icon-btn {