Desktop tool for content creators β upload, schedule and optimize videos with local AI.
Dabis Content Manager is a Windows desktop application that streamlines the upload workflow for YouTube videos. Instead of juggling multiple browser tabs, you handle everything in one app β from selecting the video file to scheduling the upload with thumbnail and playlist assignment.
The app runs in portable mode by default β all data stays in the application folder, so you can run it from a USB drive or any location without installation.
Optionally, a local AI model helps you create titles, descriptions, tags and even chapter timestamps. The AI runs entirely on your machine, so no data is sent to external servers.
| Feature | Description |
|---|---|
| Portable mode | Run from any folder β no installation required |
| YouTube upload | Upload videos directly from the app, including thumbnail |
| Scheduled publishing | Set date and time for the release with visual picker |
| Chapter generation | Automatic timestamps/chapters from transcription |
| Transcription | Local speech-to-text with Whisper (offline) |
| AI suggestions | Generate titles, descriptions and tags (local, offline) |
| Presets | Save and reuse upload configurations |
| Templates | Reusable description templates with placeholders |
| Multi-upload | Queue multiple videos with fast-fill workflow |
| Channel profile | Store language, tone and target audience for better AI suggestions |
| Upload history | Overview of all uploads with status and direct link |
| Encrypted credentials | OAuth tokens encrypted with Windows DPAPI |
- Windows 10/11
- .NET 9 Runtime (download)
- Download the latest release from the Releases page
- Extract the archive to a folder of your choice
- Start
DCM.App.exe
The app runs in portable mode β all settings and data are stored in the application folder.
git clone https://github.com/dabinuss/Dabis-Content-Manager.git
cd Dabis-Content-Manager
dotnet build -c ReleaseThe release comes with YouTube API credentials included β no setup required. Just connect your account in the app.
Use your own API credentials (optional)
- Go to the Google Cloud Console
- Create a new project or select an existing one
- Enable YouTube Data API v3
- Create OAuth 2.0 credentials (Desktop application)
- Download the JSON file
- Rename it to
youtube_client_secrets.json - Place it in the
DabisContentManagerfolder next to the app
The app can transcribe your videos locally using Whisper.
- In the app, go to Settings β General
- Select a Whisper model size (small recommended for most users)
- The model downloads automatically on first use
The AI features require a GGUF model running locally on your machine.
- Download a compatible GGUF model (e.g. from Hugging Face)
- In the app, open Settings β AI / LLM
- Select mode: Local (GGUF)
- Set the path to the model file
- Save the settings
Note: AI suggestions work best with a transcript. Without one, rule-based fallback suggestions are used.
- Connect your account: Accounts tab β Connect to YouTube
- Select a video: New Upload tab β choose video file
- Enter metadata: title, description, tags, visibility
- Optional: add thumbnail, choose playlist, schedule publishing
- Start upload: click Start Upload
- Configure your upload settings (visibility, playlist, tags, etc.)
- Save as preset for quick reuse
- Set a default preset to auto-apply on new uploads
- Go to the Templates tab β create a new template
- Use placeholders such as:
{{TITLE}}β video title{{TAGS}}β tags as comma-separated list{{HASHTAGS}}β tags as hashtags{{DATE}}β planned publication date{{PLAYLIST}}β playlist name{{VISIBILITY}}β visibility{{YEAR}},{{MONTH}},{{DAY}}β current date
- Apply a template during upload to auto-fill the description
- Add a video and click Transcribe to generate a transcript locally
- Click Suggest for title, description, tags or chapters
- Review, edit and accept the suggestions
Tip: Use the chapter generation feature to automatically create timestamps from your transcript.
- Framework: .NET 9, WPF
- YouTube API: Google.Apis.YouTube.v3
- Transcription: Whisper.net (local, offline)
- Local AI: LLamaSharp with Vulkan backend
- Persistence: JSON files in the application folder (portable)
dabinuss β @dabinuss
If you find this project useful, consider leaving a star on GitHub!
This project is licensed under the MIT License.