Skip to content

Commit

Permalink
Create Browser Application and Dockerfile #75
Browse files Browse the repository at this point in the history
* Update repository structure and adapt headings in readme
* Align used plugins
* Add browser app start instructions
* add rate limits for plugin downloads
  • Loading branch information
jfaltermeier committed Mar 7, 2023
1 parent 1ae7c4a commit 1181a8b
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 12 deletions.
21 changes: 16 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@ Documentation on how to package Theia as a Desktop Product may be found [here](h

- Root level configures mono-repo build with lerna
- `applications` groups the different app targets
- `electron` contains app to package, packaging configuration, and E2E tests for the electron target.
- `browser` contains a browser based version of Eclipse Theia Blueprint that may be packaged as a Docker image
- `electron` contains the electron app to package, packaging configuration, and E2E tests for the electron target.
- `theia-extensions` groups the various custom theia extensions for Blueprint
- `theia-blueprint-product` contains a Theia extension contributing the product branding (about dialogue and welcome page).
- `theia-blueprint-updater` contains a Theia extension contributing the update mechanism and corresponding UI elements (based on the electron updater).
Expand All @@ -61,23 +62,23 @@ Documentation on how to package Theia as a Desktop Product may be found [here](h
yarn
```

### Package the Application
### Package the Electron Application

```sh
yarn electron package
```

The packaged application is located in `applications/electron/dist`.

### Create a Preview Application (without packaging it)
### Create a Preview Electron Application (without packaging it)

```sh
yarn electron package:preview
```

The packaged application is located in `applications/electron/dist`.

### Running E2E Tests
### Running E2E Tests on Electron

The E2E tests basic UI tests of the actual application.
This is done based on the preview of the packaged application.
Expand All @@ -87,6 +88,16 @@ yarn electron package:preview
yarn electron test
```

### Running Browser app

The browser app may be started with

```sh
yarn browser start
```

and connect to <http://localhost:3000/>

### Troubleshooting

- [_"Don't expect that you can build app for all platforms on one platform."_](https://www.electron.build/multi-platform-build)
Expand All @@ -98,7 +109,7 @@ Eclipse Theia Blueprint only packages existing functionality into a product and

### Docker Build

You can create a Docker Image for Blueprint with the following build command:
You can create a Docker Image for Blueprint based on the browser app with the following build command:

```sh
docker build -t theia-blueprint -f browser.Dockerfile .
Expand Down
11 changes: 5 additions & 6 deletions applications/browser/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,24 +97,23 @@
"rebuild": "theia rebuild:browser --cacheRoot ../..",
"start": "yarn -s rebuild && theia start --plugins=local-dir:./plugins",
"watch": "concurrently --kill-others -n tsc,bundle -c red,yellow \"tsc -b -w --preserveWatchOutput\" \"yarn -s watch:bundle\"",
"download:plugins": "theia download:plugins"
"download:plugins": "theia download:plugins --rate-limit=1"
},
"theiaPluginsDir": "plugins",
"theiaPlugins": {
"vscode.git": "https://open-vsx.org/api/vscode/git/1.52.1/file/vscode.git-1.52.1.vsix",
"vscode.markdown-language-features": "https://open-vsx.org/api/vscode/markdown-language-features/1.39.2/file/vscode.markdown-language-features-1.39.2.vsix",
"vscode-builtin-extensions-pack": "https://open-vsx.org/api/eclipse-theia/builtin-extension-pack/1.50.1/file/eclipse-theia.builtin-extension-pack-1.50.1.vsix",
"vscode.typescript": "https://open-vsx.org/api/vscode/typescript/1.62.3/file/vscode.typescript-1.62.3.vsix",
"vscode.typescript-language-features": "https://open-vsx.org/api/vscode/typescript-language-features/1.62.3/file/vscode.typescript-language-features-1.62.3.vsix",
"redhat.java": "https://open-vsx.org/api/redhat/java/0.73.0/file/redhat.java-0.73.0.vsix",
"vscjava.vscode-java-debug": "https://open-vsx.org/api/vscjava/vscode-java-debug/0.30.0/file/vscjava.vscode-java-debug-0.30.0.vsix",
"vscjava.vscode-java-test": "https://open-vsx.org/api/vscjava/vscode-java-test/0.26.1/file/vscjava.vscode-java-test-0.26.1.vsix",
"vscjava.vscode-maven": "https://open-vsx.org/api/vscjava/vscode-maven/0.21.2/file/vscjava.vscode-maven-0.21.2.vsix",
"vscjava.vscode-java-dependency": "https://open-vsx.org/api/vscjava/vscode-java-dependency/0.16.0/file/vscjava.vscode-java-dependency-0.16.0.vsix",
"redhat.vscode-xml": "https://open-vsx.org/api/redhat/vscode-xml/0.20.0/file/redhat.vscode-xml-0.20.0.vsix"
"vscjava.vscode-java-dependency": "https://open-vsx.org/api/vscjava/vscode-java-dependency/0.16.0/file/vscjava.vscode-java-dependency-0.16.0.vsix"
},
"theiaPluginsExcludeIds": [
"ms-vscode.js-debug-companion",
"vscode.extension-editing",
"vscode.microsoft-authentication",
"vscode.html-language-features",
"vscode.git",
"vscode.git-ui",
"vscode.github",
Expand Down
2 changes: 1 addition & 1 deletion applications/electron/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@
"package:preview": "yarn clean:dist && electron-builder -c.mac.identity=null --dir",
"update:checksum": "ts-node scripts/update-checksum.ts",
"update:next": "ts-node ../../scripts/update-theia-to-next.ts",
"download:plugins": "theia download:plugins",
"download:plugins": "theia download:plugins --rate-limit=1",
"test": "mocha --timeout 60000 \"./test/*.spec.js\""
},
"theiaPluginsDir": "plugins",
Expand Down

0 comments on commit 1181a8b

Please sign in to comment.