{"id":15387273,"url":"https://github.com/rhysd/chromenu","last_synced_at":"2025-04-15T17:32:53.080Z","repository":{"id":57198509,"uuid":"74126256","full_name":"rhysd/Chromenu","owner":"rhysd","description":"Mobile Chrome in your menubar","archived":false,"fork":false,"pushed_at":"2020-07-07T00:17:55.000Z","size":228,"stargazers_count":44,"open_issues_count":2,"forks_count":2,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-05T12:32:25.029Z","etag":null,"topics":["browser","desktop-application","menubar"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rhysd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-11-18T12:03:59.000Z","updated_at":"2024-07-10T10:36:40.000Z","dependencies_parsed_at":"2022-09-16T14:10:14.832Z","dependency_job_id":null,"html_url":"https://github.com/rhysd/Chromenu","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhysd%2FChromenu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhysd%2FChromenu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhysd%2FChromenu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhysd%2FChromenu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rhysd","download_url":"https://codeload.github.com/rhysd/Chromenu/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219904554,"owners_count":16566522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser","desktop-application","menubar"],"created_at":"2024-10-01T14:53:09.379Z","updated_at":"2024-10-16T22:41:10.960Z","avatar_url":"https://github.com/rhysd.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Chromenu\n=======\n\nChromium mini browser for your menubar. This app intends to be used for your daily tasks with browser.\nYou can access to a mini browser quickly via clicking menu item or hot key everywhere.\n\nThis app consists of three parts; header, main view and footer.\n\n![main screenshot](https://github.com/rhysd/ss/blob/master/Chromenu/main.jpg?raw=true)\n\n- **Header**: you can register some pages and switch them by clicking icons.\n- **Main view**: web pages will be rendered here.\n- **Footer**: you can control browser; go forward/back, home, reload and so on.\n\n## Installation\n\nDownload a package for your environment from [release page](https://github.com/rhysd/Chromenu/releases).\nAfter unarchive the zip, you can start app by clicking or executing a binary in the directory.\n\nOr install via [npm](https://www.npmjs.com/package/chromenu).\n\n```\n$ npm install -g chromenu\n$ chromenu\n```\n\n## Usage\n\n### Getting Started\n\nJust after starting app, you can see below window.\n\n\u003cimg src=\"https://github.com/rhysd/ss/blob/master/Chromenu/startup.png?raw=true\" alt=\"just after starting\" width=243 height=434/\u003e\n\nFor now, what you can do is register new page from '+' button at header.\nIt opens a configuration view and you can input the information of the page which you want to register.\n\n- URL of the page (required)\n- Icon image (optional)\n- Page title (optional)\n\n\u003cimg src=\"https://github.com/rhysd/ss/blob/master/Chromenu/configuration.png?raw=true\" alt=\"configuration page\" width=243 height=434/\u003e\n\nAfter clicking 'OK', new icon will be added to header and the page will be opened in main view.\n\n\u003cimg src=\"https://github.com/rhysd/ss/blob/master/Chromenu/after-registration.png?raw=true\" alt=\"after registration\" width=243 height=434/\u003e\n\nNow you can explore the page freely. Footer has some buttons to control browseing (go forward/back,\ngo home (registered URL), reload).\n\nYou can show/hide this app by clicking the Chrome icon in menubar or entering hot key (`Cmd+Shift+S`\nin macOS or `Ctrl+Shift+S` in other platforms by default). In app, some keyboard shortcuts are available\n(please see below section).\n\nWhen you want to add another page, click '+' again.\n\n### Keyboard Shortcuts\n\nSome keyboard shortcuts are available in the app by default. The `mod` means `Cmd` key in macOS,\nor `Ctrl` key in other platforms.\n\n| Default Shortcut | Description                        | Action Name             |\n|------------------|------------------------------------|-------------------------|\n| `mod+{number}`   | Open `{number}`th page.            | `page1`~`page9`         |\n| `mod+r`          | Reload page.                       | `reload`                |\n| `mod+f`          | Toggle search window.              | `toggle-search`         |\n| `mod+shift+h`    | Show home (registered URL).        | `home`                  |\n| `mod+backspace`  | Go back.                           | `back`                  |\n| N/A              | Go forward.                        | `forward`               |\n| `mod+o`          | Open the page in external browser. | `open-external-browser` |\n| `ctrl+tab`       | Open next page.                    | `next-page`             |\n| `ctrl+shift+tab` | Open previous page.                | `previous-page`         |\n| `mod+h`          | Scroll left.                       | `scroll-left`           |\n| `mod+l`          | Scroll right.                      | `scroll-right`          |\n| `mod+j`          | Scroll down.                       | `scroll-down`           |\n| `mod+k`          | Scroll up.                         | `scroll-up`             |\n| `mod+shift+j`    | Scroll to the bottom of page.      | `scroll-bottom`         |\n| `mod+shift+k`    | Scroll to the top of page.         | `scroll-top`            |\n| N/A              | Scroll down half page.             | `scroll-down-half-page` |\n| N/A              | Scroll up half page.               | `scroll-up-half-page`   |\n| N/A              | Scroll down a page.                | `scroll-down-page`      |\n| N/A              | Scroll up a page.                  | `scroll-up-page`        |\n| N/A              | Open DevTools (for debugging).     | `open-devtools`         |\n| N/A              | Reset application (for debug).     | `reset-app`             |\n\n### Search in the Page\n\nYou can search some words in the page like `Cmd+F` (or `Ctrl+F`) in Chrome.\n\n![search animated gif](https://github.com/rhysd/ss/blob/master/Chromenu/page-search.gif?raw=true)\n\n## Configuration\n\nConfiguration file `config.json` is created in application directory when app is launched at first.\n\nThe path to configuration directory is depending on the OS.\n\n- `~/Library/Application\\ Support/Chromenu` for macOS\n- `~/.config/Chromenu` for Linux\n- `%APPDATA%\\Chromenu` for Windows.\n\nYou can customize application behavior with the JSON file.\n\n### `hot_key`\n\nHot key to access to this app quickly. Note that key sequence format is **different from below `keymaps` configuration**.\nThis value should be specified with [accelerator format](https://github.com/electron/electron/blob/master/docs/api/accelerator.md) (e.g. `F8`).\nDefault value is `CmdOrCtrl+Shift+S`. Empty string or `null` disables hot key.\n\n### `icon_color`\n\nIcon color in menubar (task tray in Windows). Available value is `black` or `white`.\nDefault is `black` for macOS, `white` for other platforms.\n\n### `always_on_top`\n\nIf this value is set to `true`, application is fixed to the top of window stack.\nAfter losing focus, application keeps to be shown. Default value is `false`.\n\n### `normal_window`\n\nIf this value is set to `true`, application will launch with normal window rather than menubar window.\nDefault value is `false`.\n\n### `url_blacklist`\n\nYou can specify patterns of URL to block loading some contents. Default value is `[]`.\n\n```json\n[\n    \"https://*.github.com/*\",\n    \"*://electron.github.io\",\n    \"https://example.com/*\"\n]\n```\n\nThese patterns will be passed to [Electron's `WebRequest.onBeforeRequest` callback](http://electron.atom.io/docs/api/web-request/).\n\n### `keymaps`\n\nKey-map value to specify key shortcuts.\n\nKey is a key sequence. The format is the same as [mousetrap package's one](https://craig.is/killing/mice).\n\nValue is an action name in the key shortcuts list of above section.\nOr you can specify the relative path to JavaScript file in configuration directory.\n\n```json\n{\n    \"mod+q\": \"toggle-search\",\n    \"mod+s\": \"path/to/select-some-tab.js\"\n}\n```\n\nWith above, `mod+s` will execute `{application directory}/path/to/select-some-tab.js`\nin the current page. You can create a cusotmized key shortcut by writing up JavaScript code\nfor your favorite pages.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhysd%2Fchromenu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frhysd%2Fchromenu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhysd%2Fchromenu/lists"}