Repository navigation
Technical Frontend
Audience: developers. Baseline reviewed: 2026-10-29.
Core pages use shared PHP views and Page helpers. Plugins add assets/markup through render hooks or page-specific includes. Inspect the actual page's head/footer and Page extra scripts/styles before assuming an installed npm dependency is loaded globally.
package.json describes dependency ranges; the lockfile describes resolved install versions. A local node_modules tree can differ from both. The default legacy UI loads the bundled Bootstrap 3 path; Bootstrap 5 exists as an optional compatibility path. Match the actual page rather than mixing markup/attributes from both versions.
| Need | Existing integration to inspect |
|---|---|
| Async loading state |
modal.showPleaseWait() / modal.hidePleaseWait()
|
| Server-response feedback |
avideoResponse() and avideoToast*()
|
| Alerts/dialogs |
avideoAlert*(), avideoConfirm*(), iframe/modal helpers |
| Additional page assets | The Page object's setExtraScripts() / setExtraStyles()
|
| Image cropping |
getCroppie() / saveCroppieImage()
|
| Rich text |
getTinyMCE() and display-side content handling |
| Guided workflows |
getTourHelpButton() / startTour()
|
| Date/calendar/chart widgets | Existing bundled library and nearest page implementation |
Use the source references for exact declarations and overloads. Not every similarly named utility is a stable public interface.
The existing player is shared by video pages and enabled player plugins. Additional controls, advertisements, subtitles, quality selectors, previews, overlays and media-session behavior can interact. Find the hook or initialization stage that adds a feature before creating another player instance.
Check actual source URLs, MIME/content, playback state and dependent requests. A player error can originate in HLS delivery, authorization, an ad integration, unavailable subtitles or browser policy rather than the skin.
Gallery, YouPHPFlix2, FirstPageChannelList and shared Layout wrappers can render common components differently. Changes to shared navigation/cards/player/modals need the relevant homepage modes, mobile breakpoints and light/dark themes checked.
Capture the failing request and console error, identify which file loaded the script, confirm actual library/runtime versions and trace the event to its server endpoint. Preserve input/output contracts and loading/error states. Browser console inspection should not expose credential-bearing request URLs in reports.
No browser UI, player/media or theme compatibility tests were run by generating the documentation.
Start
Install and update
- Install on Ubuntu 24.04 or 26.04
- Installation Setup Page
- Scheduler cron job (required)
- Set up email
- Use HTTPS
- Own Encoder
- Docker
- Update AVideo
- Backup
- Secure file permissions
- Server command-line tools
- Hidden configuration options
Videos
- Upload a video
- Local Encoder (on your computer)
- Bulk upload by FTP
- Import a channel
- Publish on YouTube and social media
- Privacy options
- Only for logged-in users
- Resolutions by user group
- Storage options
- Move and protect video files
- Video does not play
Users
Live
- Make a live stream
- Stream with OBS
- Own live server
- One live server, many sites
- Live server install errors
- Live does not play
Plugins
Problems
Other
- Translate your site
- Write a plugin (developers)
- Technical reference (developers and advanced administrators)
Old and retired guides