Documentation

How to use ViddyDo, and how the desktop app talks to this site.

Getting started

Replace this with the first-run walkthrough. Keep it to the shortest path that produces a result, and link to the deeper sections rather than explaining everything here.

  1. Install the build for your platform. See the install guide.
  2. Open the app and point it at whatever it works on.
  3. Do the one thing the app is for.
  4. Save or export the result.

Core concepts

Define the handful of nouns the rest of the documentation uses.

TermMeaning
ProjectWhat the app opens and saves.
ProfileA reusable group of settings.
ExportThe finished file the app produces.

Settings

Document each setting, its default, and where the app stores it on disk.

Troubleshooting

The app will not start

Cover the common causes, then point at the bug report form.

Where are the log files?

Name the exact folder on Windows and macOS. People attach these to bug reports, and the crash reporter uploads them automatically.

App Crash Log API

When ViddyDo fails, it posts a crash report to this site. It is the same endpoint the browser form uses, with auto_reported=1 added, so crash reports and human reports land in one queue and the admin can filter them apart.

Endpoint

POST https://viddydo.logminds.com/bug-report
Content-Type: multipart/form-data
Accept: application/json

No CSRF token and no authentication. The desktop app has no browser session, so /bug-report is listed in the CSRF exceptions in bootstrap/app.php.

Fields

FieldRequiredNotes
nameyesMax 255. Crash uploads may send a machine name or "Crash Reporter".
emailnoEnables the follow-up and resolved emails.
descriptionyesMax 10000. For a crash, the exception message plus stack trace.
app_versionnoMax 32, for example 1.4.2.
app_platformnoMax 32, for example windows or macos.
auto_reportedno1 for crash uploads. Flags the report "auto" in admin.
screenshots[]noPNG, JPG, or GIF. Up to 5 files, 10 MB each.
logs[]no.log or .txt only.

At most 5 files across both arrays, and 10 MB total for the request.

Responses

StatusBody
200{"ok":true,"id":123,"message":"..."}
422{"errors":{"field":["..."]}}

Send Accept: application/json. Without it a failed submission returns a redirect instead of JSON. Queue crash reports locally and retry later on a network error, and delete the queued report once a 200 comes back.

Example

curl -X POST https://viddydo.logminds.com/bug-report \
  -H "Accept: application/json" \
  -F "name=Crash Reporter" \
  -F "email=user@@example.com" \
  -F "description=Unhandled NullReferenceException in ExportJob.Run()" \
  -F "app_version=1.4.2" \
  -F "app_platform=windows" \
  -F "auto_reported=1" \
  -F "logs[]=@{{ $product['slug'] }}.log"

Releases API

The desktop app can check for updates without scraping the download page. The list is rebuilt from the zip files on disk, newest version first.

GET https://viddydo.logminds.com/api/viddydo/releases
[
  {
    "platform": "windows",
    "version": "1.4.2",
    "filename": "viddydo_1.4.2_windows.zip",
    "size_bytes": 18234123,
    "sha256": "…",
    "uploaded_at": "2026-09-22T10:00:00-06:00",
    "notes": "Fixes the export crash."
  }
]

Download through /download-file/{filename}. That route logs the download and sends the notification email; a direct link into /downloads/viddydo/ is served by the web server and is never recorded.

Report a bug

The form is called Report a Bug, but it is the way to reach us about anything: something broken, something confusing, or something you wish ViddyDo did. Suggestions and feature requests are welcome through the same form — there is no separate place for them.

For a bug, say what you did, what you expected, and what happened instead. Attach a screenshot and the log file if the app produced one; both help more than a careful description does. For a suggestion, what you were trying to get done matters more than the feature you have in mind — there may already be a way, or a better one.

Leave an email address if you would like a reply. Nothing is sent to you otherwise, and it is only used to answer the report.

Report a Bug →