website-as-app


Namewebsite-as-app JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://github.com/MarcinOrlowski/website-as-app/
Summary['Website As App v1.0.0 * Copyright 2023-2024 by Marcin Orlowski.', 'Opens any web site as standalone desktop app.', 'https://github.com/MarcinOrlowski/website-as-app/']
upload_time2024-01-28 11:31:06
maintainer
docs_urlNone
authorMarcin Orlowski
requires_python
licenseMIT License
keywords webapp desktop app
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![WebApp](docs/logo.png)

# WebApp

Run any website as standalone desktop application

[master](https://github.com/MarcinOrlowski/website-as-app/tree/master) branch:
[![Unit tests](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/unittests.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/unittests.yml)
[![codecov](https://codecov.io/gh/MarcinOrlowski/website-as-app/branch/master/graph/badge.svg?token=3THKJKSQ1G)](https://codecov.io/gh/MarcinOrlowski/website-as-app)
[![Code lint](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/linter.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/linter.yml)
[![MD Lint](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/markdown.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/markdown.yml)
---

Small Python script opening any web page in dedicated window, using embedded QT WebEngine. There are
no visible browser's UI etc, so the that can be useful to turn any website into standalone desktop
application. This is useful if you, as me, would like to have a website run as standalone app,
independently of your main browser which can be beneficial as it gives you separate entry in
window manager or task switcher etc.

> **IMPORTANT:** This tool is **NOT** turning websites into OFFLINE apps! It's about separating
> each of your key websites i.e. from each other, or gazzilions of your browser's tabs. But you
> still MUST be connected to the Internet for the apps (websites) to work as previously.

## Installation

Use `pip` to install the script:

```bash
$ pip install website-as-app
```

Once app is running, please use `--help` to see all available options, as i.e. custom icon,
window title etc.

## Usage

```bash
$ webapp "https://github.com"
```

Available options:

```bash
webapp -h
usage: webapp [--profile PROFILE] [--name NAME] [--icon ICON] [--zoom ZOOM] [--no-tray] url

Open any website in standalone window (like it's an app)

positional arguments:
url                   The URL to open

options:
--profile PROFILE     Profile name (for cookies isolation etc). Default: "default"
--name NAME, -n NAME  Application name (shown as window title)
--geometry GEOMETRY   Initial window geometry (in format "WIDTHxHEIGHT+X+Y")
--icon ICON, -i ICON  Full path to image file to be used as app icon
--zoom ZOOM, -z ZOOM  Initial WebBrowserView zoom factor. Default: 1.0
--no-tray             Disables system tray support (closing window terminates app)
```

The most important option is `--profile` which allows you to isolate cookies and app settings
per instance. Any instance using the same profile will have access to the same cookies and
settings. This is useful if you want to run multiple instances of the same app, but with
different accounts. By default `default` profile is used and it's recommended to use different
profile per each app instance.

## Current limitations

* Due to security based limitations of embedded `QWebBrowerView` you will not be able
  to save any file to your local storage nor filesystem.
* Website's Javascript code cannot write to system clipboard so you migth need to manually
  select given portion of the site and copy using function from context menu as any buttons
  on the page that is using JS to write to the host's clipboard will not currently work.

## License ##

* Written and copyrighted &copy;2023-2024 by Marcin Orlowski <mail (#) marcinorlowski (.) com>
* ResponseBuilder is open-sourced software licensed under
  the [MIT license](http://opensource.org/licenses/MIT)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/MarcinOrlowski/website-as-app/",
    "name": "website-as-app",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "webapp desktop app",
    "author": "Marcin Orlowski",
    "author_email": "mail@marcinOrlowski.com",
    "download_url": "https://files.pythonhosted.org/packages/aa/e5/7bf7daf7a1f8d6a82793261a55e15fddefbfddfc56cd1a2c62994501eed1/website-as-app-1.0.0.tar.gz",
    "platform": null,
    "description": "![WebApp](docs/logo.png)\n\n# WebApp\n\nRun any website as standalone desktop application\n\n[master](https://github.com/MarcinOrlowski/website-as-app/tree/master) branch:\n[![Unit tests](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/unittests.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/unittests.yml)\n[![codecov](https://codecov.io/gh/MarcinOrlowski/website-as-app/branch/master/graph/badge.svg?token=3THKJKSQ1G)](https://codecov.io/gh/MarcinOrlowski/website-as-app)\n[![Code lint](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/linter.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/linter.yml)\n[![MD Lint](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/markdown.yml/badge.svg?branch=master)](https://github.com/MarcinOrlowski/website-as-app/actions/workflows/markdown.yml)\n---\n\nSmall Python script opening any web page in dedicated window, using embedded QT WebEngine. There are\nno visible browser's UI etc, so the that can be useful to turn any website into standalone desktop\napplication. This is useful if you, as me, would like to have a website run as standalone app,\nindependently of your main browser which can be beneficial as it gives you separate entry in\nwindow manager or task switcher etc.\n\n> **IMPORTANT:** This tool is **NOT** turning websites into OFFLINE apps! It's about separating\n> each of your key websites i.e. from each other, or gazzilions of your browser's tabs. But you\n> still MUST be connected to the Internet for the apps (websites) to work as previously.\n\n## Installation\n\nUse `pip` to install the script:\n\n```bash\n$ pip install website-as-app\n```\n\nOnce app is running, please use `--help` to see all available options, as i.e. custom icon,\nwindow title etc.\n\n## Usage\n\n```bash\n$ webapp \"https://github.com\"\n```\n\nAvailable options:\n\n```bash\nwebapp -h\nusage: webapp [--profile PROFILE] [--name NAME] [--icon ICON] [--zoom ZOOM] [--no-tray] url\n\nOpen any website in standalone window (like it's an app)\n\npositional arguments:\nurl                   The URL to open\n\noptions:\n--profile PROFILE     Profile name (for cookies isolation etc). Default: \"default\"\n--name NAME, -n NAME  Application name (shown as window title)\n--geometry GEOMETRY   Initial window geometry (in format \"WIDTHxHEIGHT+X+Y\")\n--icon ICON, -i ICON  Full path to image file to be used as app icon\n--zoom ZOOM, -z ZOOM  Initial WebBrowserView zoom factor. Default: 1.0\n--no-tray             Disables system tray support (closing window terminates app)\n```\n\nThe most important option is `--profile` which allows you to isolate cookies and app settings\nper instance. Any instance using the same profile will have access to the same cookies and\nsettings. This is useful if you want to run multiple instances of the same app, but with\ndifferent accounts. By default `default` profile is used and it's recommended to use different\nprofile per each app instance.\n\n## Current limitations\n\n* Due to security based limitations of embedded `QWebBrowerView` you will not be able\n  to save any file to your local storage nor filesystem.\n* Website's Javascript code cannot write to system clipboard so you migth need to manually\n  select given portion of the site and copy using function from context menu as any buttons\n  on the page that is using JS to write to the host's clipboard will not currently work.\n\n## License ##\n\n* Written and copyrighted &copy;2023-2024 by Marcin Orlowski <mail (#) marcinorlowski (.) com>\n* ResponseBuilder is open-sourced software licensed under\n  the [MIT license](http://opensource.org/licenses/MIT)\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "['Website As App v1.0.0 * Copyright 2023-2024 by Marcin Orlowski.', 'Opens any web site as standalone desktop app.', 'https://github.com/MarcinOrlowski/website-as-app/']",
    "version": "1.0.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/MarcinOrlowski/website-as-app//issues/",
        "Documentation": "https://github.com/MarcinOrlowski/website-as-app/",
        "Homepage": "https://github.com/MarcinOrlowski/website-as-app/",
        "Source Code": "https://github.com/MarcinOrlowski/website-as-app/"
    },
    "split_keywords": [
        "webapp",
        "desktop",
        "app"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed688656c7fba3dcccfe6eabf69c649a527c45a0953effb2715c14def1be6483",
                "md5": "3a541aa9cf4415568400b6750e523abf",
                "sha256": "4474b60be77b83bb12082922e8006a51b0bae2e7511aa0d9db72c62645cabd93"
            },
            "downloads": -1,
            "filename": "website_as_app-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3a541aa9cf4415568400b6750e523abf",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 273467,
            "upload_time": "2024-01-28T11:31:02",
            "upload_time_iso_8601": "2024-01-28T11:31:02.636009Z",
            "url": "https://files.pythonhosted.org/packages/ed/68/8656c7fba3dcccfe6eabf69c649a527c45a0953effb2715c14def1be6483/website_as_app-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aae57bf7daf7a1f8d6a82793261a55e15fddefbfddfc56cd1a2c62994501eed1",
                "md5": "cff80947b0e428e626f48fc9dd6aba58",
                "sha256": "84c5e879a45f6caf9a29287d5b72330ba589a1c9b13241d57e863f373ace430d"
            },
            "downloads": -1,
            "filename": "website-as-app-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "cff80947b0e428e626f48fc9dd6aba58",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 273139,
            "upload_time": "2024-01-28T11:31:06",
            "upload_time_iso_8601": "2024-01-28T11:31:06.618453Z",
            "url": "https://files.pythonhosted.org/packages/aa/e5/7bf7daf7a1f8d6a82793261a55e15fddefbfddfc56cd1a2c62994501eed1/website-as-app-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-28 11:31:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MarcinOrlowski",
    "github_project": "website-as-app",
    "github_not_found": true,
    "lcname": "website-as-app"
}
        
Elapsed time: 0.18752s