Degoog Store repositories
Git repositories you can add in Settings then Store to easily install plugins, themes, engines and every other kind of extension.
What a store repo is
A store repo is a Git repository you can link to Degoog by going to Settings then Store. Once you add it, you can browse and install plugins, themes, engines, transports, autocomplete providers, favicon providers and shortcuts from the Store tab without having to copy files manually.
Repo structure
Your repository needs to follow this layout:
my-degoog-repo/
package.json
plugins/
my-plugin/
index.js
template.html
style.css
themes/
my-theme/
theme.json
style.css
engines/
my-engine/
index.js
transports/
my-transport/
index.js
autocomplete/
my-autocomplete/
index.js
favicon/
my-favicon/
index.js
shortcuts/
my-shortcut/
index.js
Each extension folder uses the same format it has when installed directly
in your
data folders. You do not need any extra packaging.
package.json (required)
At the root of your repository, you need to add a
package.json file that lists every item you want to show up in
the Store:
{
"name": "my-degoog-repo",
"description": "Short description of your collection",
"author": "YourName",
"plugins": [
{
"path": "plugins/my-plugin",
"name": "My Plugin",
"description": "What it does",
"version": "1.0.0",
"type": "command"
}
],
"themes": [
{
"path": "themes/my-theme",
"name": "My Theme",
"description": "Short description",
"version": "1.0.0"
}
],
"engines": [],
"transports": [],
"autocomplete": [
{
"path": "autocomplete/my-autocomplete",
"name": "My Autocomplete",
"description": "Suggestions from somewhere",
"version": "1.0.0"
}
],
"favicon": [
{
"path": "favicon/my-favicon",
"name": "My Favicon Provider",
"description": "Icons from icons.example.com"
}
],
"shortcuts": [
{
"path": "shortcuts/my-shortcut",
"name": "My Shortcut",
"description": "What the key does",
"version": "1.0.0"
}
],
"repo-image": "logo.png"
}
-
repo-image (optional): The path to an image file in your
repository root like
logo.pngor a full URL. This displays right next to your repository in Settings then Store. - path: The folder path inside your repository.
- name, description, and version: These details are displayed on the Store card.
-
type (plugins only): You can use
command,slot,searchBar, orsearch-result-tab. This is optional and helps with the Store display. - dependencies (optional): An array of URLs for things like required engines. When someone installs your item, these dependencies are offered to them automatically.
Only the items you explicitly list here will appear in the Store. Make sure your paths match your actual folders.
The manifest keys are plugins, themes,
engines, transports, autocomplete,
favicon and shortcuts. autocomplete
and favicon are singular and shortcuts is plural.
The Store ignores a misspelled key and everything under it. Autocomplete,
Favicon providers and
Shortcuts cover what goes in those
folders.
Optional author.json and screenshots
Inside any extension folder you can include a few extra details:
- author.json: This file overrides the main repository author for a specific item.
{
"name": "Author Name",
"url": "https://github.com/username",
"avatar": "https://example.com/avatar.png"
}
-
screenshots/: A folder containing image files like
1.pngorpreview.png. The very first image acts as the Store card thumbnail, and all of them are visible in the lightbox when a user clicks the image.
Publish and share
- Push your repository to GitHub or any other Git host.
- Copy the clone URL.
- Tell your users to go to Settings then Store then Add and paste your URL.
Users only need to add your repository once. After that, they can easily install, uninstall, and refresh items directly from the Store. When someone refreshes a repository, their installed items are automatically updated to the latest version.
Official example: The
official extensions repository
uses the clone URL
https://github.com/degoog-org/official-extensions.git. Just add
it to your Store to install the Weather plugin, fresh themes, and other great
extensions.
Community extensions
We want to give a massive thank you to our community for building and sharing their own plugins and engines. You can discover all of these over at the community extensions page. Please remember that because these are created by other users, we do not officially vet them or take any responsibility for them. Always make sure you double check what you are installing on your system before adding it.