{
    "name": "Dexter",
    "short_name": "Dexter",
    "description": "Dexter is the open-source interface for AI chat. Multi-model, BYOK-ready, and fully self-hostable.",
    "start_url": "/",
    "scope": "/",
    "display": "standalone",
    "display_override": [
        "window-controls-overlay",
        "standalone",
        "minimal-ui",
        "browser"
    ],
    "background_color": "#09090b",
    "theme_color": "#09090b",
    "orientation": "any",
    "categories": [
        "productivity",
        "utilities",
        "education"
    ],
    "lang": "en",
    "dir": "ltr",
    "prefer_related_applications": false,
    "icons": [
        {
            "src": "/icon-192.png",
            "sizes": "192x192",
            "type": "image/png",
            "purpose": "any"
        },
        {
            "src": "/icon-512.png",
            "sizes": "512x512",
            "type": "image/png",
            "purpose": "any"
        },
        {
            "src": "/icon-512.png",
            "sizes": "512x512",
            "type": "image/png",
            "purpose": "maskable"
        }
    ],
    "shortcuts": [
        {
            "name": "New Chat",
            "short_name": "New",
            "description": "Start a new AI conversation",
            "url": "/",
            "icons": [
                {
                    "src": "/icon-192.png",
                    "sizes": "192x192"
                }
            ]
        },
        {
            "name": "Voice Chat",
            "short_name": "Voice",
            "description": "Start a voice conversation",
            "url": "/?voice=true",
            "icons": [
                {
                    "src": "/icon-192.png",
                    "sizes": "192x192"
                }
            ]
        },
        {
            "name": "Files",
            "short_name": "Files",
            "description": "View generated files",
            "url": "/files",
            "icons": [
                {
                    "src": "/icon-192.png",
                    "sizes": "192x192"
                }
            ]
        },
        {
            "name": "Library",
            "short_name": "Library",
            "description": "Access your library",
            "url": "/library",
            "icons": [
                {
                    "src": "/icon-192.png",
                    "sizes": "192x192"
                }
            ]
        }
    ],
    "share_target": {
        "action": "/api/share-target",
        "method": "POST",
        "enctype": "multipart/form-data",
        "params": {
            "title": "title",
            "text": "text",
            "url": "url",
            "files": [
                {
                    "name": "files",
                    "accept": [
                        "image/*",
                        "text/*",
                        "application/pdf",
                        ".md",
                        ".txt"
                    ]
                }
            ]
        }
    },
    "file_handlers": [
        {
            "action": "/",
            "accept": {
                "text/plain": [
                    ".txt",
                    ".md"
                ],
                "text/markdown": [
                    ".md"
                ],
                "application/json": [
                    ".json"
                ],
                "application/pdf": [
                    ".pdf"
                ]
            }
        }
    ],
    "launch_handler": {
        "client_mode": [
            "focus-existing",
            "auto"
        ]
    },
    "edge_side_panel": {
        "preferred_width": 480
    },
    "handle_links": "preferred",
    "capture_links": "new-client"
}
