From 4c4605cc75c34d4959e7fafb0ce196d3937c1458 Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sat, 18 Oct 2025 16:53:53 +0200 Subject: [PATCH 001/212] docs: fix Fedora build instructions - Added missing kernel-headers and kernel-devel packages - Added gcc, gcc-c++, and make dependencies - Added troubleshooting note for OpenSSL build failures - Added example commands for deploying the built launcher - Tested on Fedora with successful build --- docs/en/game/getting-started.md | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/docs/en/game/getting-started.md b/docs/en/game/getting-started.md index db5a480b..ed3df6eb 100644 --- a/docs/en/game/getting-started.md +++ b/docs/en/game/getting-started.md @@ -35,7 +35,7 @@ In order to do this, you need a basic understanding of how to build an applicati Make sure you have basic development tools installed, often found in packages, for example: - Debian: `sudo apt install build-essential` -- Fedora: `sudo dnf install cmake gcc-c++ perl-IPC-Cmd perl-FindBin perl-File-Compare perl-File-Copy` +- Fedora: `sudo dnf install cmake gcc gcc-c++ make perl perl-IPC-Cmd perl-FindBin perl-File-Compare perl-File-Copy kernel-headers kernel-devel` - Arch: `sudo pacman -S base-devel` - openSUSE: `zypper in -t pattern devel-basis` - SteamOS (Arch): `sudo pacman -S base-devel linux-api-headers glibc libconfig` (You also need to do `sudo steamos-readonly disable` but make sure to enable it again after installing the packages) @@ -86,7 +86,24 @@ cmake --build bin --parallel By not specifying `-DCMAKE_BUILD_TYPE=Release` you are building a debug version, which is larger in filesize but does not contain the launcher-can-only-connect-to-a-server-once bug -Move the finished application out of the `/bin` folder into its own folder and run it from there +!!!note "Fedora Users" + If vcpkg fails during OpenSSL compilation with kernel headers errors, ensure all dependencies are installed: +```bash + sudo dnf install kernel-headers kernel-devel gcc gcc-c++ make perl +``` + Then clean the vcpkg cache: +```bash + rm -rf ~/vcpkg/buildtrees/openssl +``` + And retry the cmake configuration command. + +Move the finished application out of the `/bin` folder into its own folder and run it from there: +```bash +mkdir -p ~/beammp-launcher +cp bin/BeamMP-Launcher ~/beammp-launcher/ +cd ~/beammp-launcher +./BeamMP-Launcher +``` The native linux BeamMP-Launcher will start and use native linux BeamNG.drive From 7a60792ca7bc8b2504c0b3bb2c65d6104ddda5b5 Mon Sep 17 00:00:00 2001 From: Leif Lundberg <41685083+leiflundberg@users.noreply.github.com> Date: Sun, 19 Oct 2025 09:14:57 +0200 Subject: [PATCH 002/212] Update docs/en/game/getting-started.md Co-authored-by: Tixx <83774803+WiserTixx@users.noreply.github.com> --- docs/en/game/getting-started.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/en/game/getting-started.md b/docs/en/game/getting-started.md index ed3df6eb..d2f8b989 100644 --- a/docs/en/game/getting-started.md +++ b/docs/en/game/getting-started.md @@ -88,13 +88,13 @@ cmake --build bin --parallel !!!note "Fedora Users" If vcpkg fails during OpenSSL compilation with kernel headers errors, ensure all dependencies are installed: -```bash + ```bash sudo dnf install kernel-headers kernel-devel gcc gcc-c++ make perl -``` + ``` Then clean the vcpkg cache: -```bash + ```bash rm -rf ~/vcpkg/buildtrees/openssl -``` + ``` And retry the cmake configuration command. Move the finished application out of the `/bin` folder into its own folder and run it from there: From 87a051ac112f130a689db1d91336d32f9d67c9c2 Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sun, 19 Oct 2025 09:17:51 +0200 Subject: [PATCH 003/212] Use VCPKG_ROOT variable instead of hardcoded path. Co-authored-by: WiserTixx --- docs/en/game/getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/game/getting-started.md b/docs/en/game/getting-started.md index d2f8b989..39a78dd0 100644 --- a/docs/en/game/getting-started.md +++ b/docs/en/game/getting-started.md @@ -93,7 +93,7 @@ cmake --build bin --parallel ``` Then clean the vcpkg cache: ```bash - rm -rf ~/vcpkg/buildtrees/openssl + rm -rf $VCPKG_ROOT/buildtrees/openssl ``` And retry the cmake configuration command. From 008e0b89b6ae2a9a0f028c6630c1c717977a087a Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sun, 19 Oct 2025 09:50:18 +0200 Subject: [PATCH 004/212] added note for how to configure native linux game path --- docs/en/game/getting-started.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/docs/en/game/getting-started.md b/docs/en/game/getting-started.md index 39a78dd0..0f381e67 100644 --- a/docs/en/game/getting-started.md +++ b/docs/en/game/getting-started.md @@ -105,7 +105,29 @@ cd ~/beammp-launcher ./BeamMP-Launcher ``` -The native linux BeamMP-Launcher will start and use native linux BeamNG.drive +!!!note "Configuring Native Linux Game Path" + To use the native Linux version of BeamNG.drive (better performance than Proton), configure the game path in `Launcher.cfg`: + + Find your BeamNG installation: + ```bash + find ~/.steam ~/.local/share/Steam -name "BeamNG.drive.x64" 2>/dev/null + ``` + + Create or edit `~/beammp-launcher/Launcher.cfg`: + ```json + { + "Port": 4444, + "Build": "Default", + "CachingDirectory": "./Resources", + "GamePath": "$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64" + } + ``` + + Common paths: + - `$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` + - `$HOME/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` + +The native Linux BeamMP-Launcher will start and use native Linux BeamNG.drive ### **2c. Using beamNG.drive with Proton** @@ -139,6 +161,7 @@ Note that this assumes you put the launcher's binary you compiled earlier into ` - The native linux BeamMP-Launcher currently can only connect to a server once, after disconnecting you need to restart the launcher. You can do that without closing the game inbetween - If you don’t see the “Multiplayer” button. Make sure that the BeamMP mod is present and activated in the “Mod Manager” then try pressing CTRL + L. - VPNs of any type may cause connection issues. +- On Linux Native first launch, the launcher creates its configuration file, which may trigger a GNOME "not responding" dialog. Click "Wait", this only occurs once. - If the Launcher reports any errors, read the [FAQ](https://forum.beammp.com/c/faq/35). Should you need further help with installation, you are welcome to create a post on our [forum](https://forum.beammp.com) or ask on our [Discord server](https://discord.gg/beammp). From 4670c5cfc94b65e969050ab3b08fc890f2bc90be Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sun, 19 Oct 2025 13:09:19 +0200 Subject: [PATCH 005/212] translated suggested changes to german --- docs/de/game/getting-started.md | 74 ++++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/docs/de/game/getting-started.md b/docs/de/game/getting-started.md index 5632550e..5e09680c 100644 --- a/docs/de/game/getting-started.md +++ b/docs/de/game/getting-started.md @@ -31,15 +31,37 @@ BeamMP ist vollständig kompatibel mit Windows und Linux, an der Kompatibilität Derzeit musst du den Launcher selbst erstellen. Dazu benötigst du grundlegende Kenntnisse zum Erstellen einer Anwendung. -Stelle sicher, dass [`vcpkg`](https://learn.microsoft.com/en-us/vcpkg/get_started/get-started?pivots=shell-bash#1---set-up-vcpkg) sowie grundlegende Entwicklungstools installiert sind, welche oft in Paketen enthalten sind, zum Beispiel: +Stelle sicher, dass grundlegende Entwicklungstools installiert sind, welche oft in Paketen enthalten sind, zum Beispiel: - Debian: `sudo apt install build-essential` -- Fedora: `sudo dnf install cmake gcc-c++ perl-IPC-Cmd perl-FindBin perl-File-Compare perl-File-Copy` +- Fedora: `sudo dnf install cmake gcc gcc-c++ make perl perl-IPC-Cmd perl-FindBin perl-File-Compare perl-File-Copy kernel-headers kernel-devel` - Arch: `sudo pacman -S base-devel` - openSUSE: `zypper in -t pattern devel-basis` - SteamOS (Arch): `sudo pacman -S base-devel linux-api-headers glibc libconfig` (Du musst auch `sudo steamos-readonly disable` ausführen, schalte es jedoch nach der Installation wieder ein) -Klone das BeamMP-Launcher-Repository mit `git` auf dein System, zum Beispiel: `git clone https://github.com/BeamMP/BeamMP-Launcher.git` [Weitere Informationen zum Klonen eines GitHub-Repos](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) + +Klone `vcpkg`, initialisiere es und füge es zu PATH hinzu + +1. +```bash +git clone https://github.com/microsoft/vcpkg.git +``` + +2. +```bash +./vcpkg/bootstrap-vcpkg.sh +``` + +3. +```bash +export VCPKG_ROOT="$(pwd)/vcpkg" +export PATH=$VCPKG_ROOT:$PATH +``` + + +Klone das BeamMP-Launcher-Repository mit `git` auf dein System, zum Beispiel: +`git clone https://github.com/BeamMP/BeamMP-Launcher.git` +[Weitere Informationen zum Klonen eines GitHub-Repos](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) Lade das "Tag", das für die [neueste Version](https://github.com/BeamMP/BeamMP-Launcher/releases/latest) verwendet wurde. Wenn beispielsweise `v2.3.2` in der neuesten Version verwendet wird, führe `git checkout v2.3.2` aus. @@ -61,9 +83,48 @@ cmake --build bin --parallel !!!note "" - Wenn du -DCMAKE_BUILD_TYPE=Release nicht spezifizierst, erstellst du eine Debug-Version, die zwar eine größere Dateigröße hat, aber nicht den Fehler „Launcher kann sich nur einmal mit einem Server verbinden“ enthält. + Wenn du -DCMAKE_BUILD_TYPE=Release nicht spezifizierst, erstellst du eine Debug-Version, die zwar eine größere Dateigröße hat, aber nicht den Fehler „Launcher kann sich nur einmal mit einem Server verbinden" enthält. -Verschiebe die fertige Anwendung aus dem `/bin` Ordner in einen eigenen Ordner und führe sie von dort aus aus. +!!!note "Fedora Benutzer" + Wenn vcpkg während der OpenSSL-Kompilierung mit Kernel-Header-Fehlern fehlschlägt, stelle sicher, dass alle Abhängigkeiten installiert sind: + ```bash + sudo dnf install kernel-headers kernel-devel gcc gcc-c++ make perl + ``` + Bereinige dann den vcpkg-Cache: + ```bash + rm -rf $VCPKG_ROOT/buildtrees/openssl + ``` + Und wiederhole den cmake-Konfigurationsbefehl. + +Verschiebe die fertige Anwendung aus dem `/bin` Ordner in einen eigenen Ordner und führe sie von dort aus aus: +```bash +mkdir -p ~/beammp-launcher +cp bin/BeamMP-Launcher ~/beammp-launcher/ +cd ~/beammp-launcher +./BeamMP-Launcher +``` + +!!!note "Konfiguration des nativen Linux-Spielpfads" + Um die native Linux-Version von BeamNG.drive zu verwenden (bessere Leistung als Proton), konfiguriere den Spielpfad in `Launcher.cfg`: + + Finde deine BeamNG-Installation: + ```bash + find ~/.steam ~/.local/share/Steam -name "BeamNG.drive.x64" 2>/dev/null + ``` + + Erstelle oder bearbeite `~/beammp-launcher/Launcher.cfg`: + ```json + { + "Port": 4444, + "Build": "Default", + "CachingDirectory": "./Resources", + "GamePath": "$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64" + } + ``` + + Häufige Pfade: + - `$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` + - `$HOME/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` Der native Linux BeamMP-Launcher wird gestartet und verwendet das native Linux BeamNG.drive @@ -98,8 +159,9 @@ Beachte, dass hierbei davon ausgegangen wird, dass die Binärdatei des Launchers ## **3. Bekannte Probleme** - Der native Linux BeamMP-Launcher kann sich derzeit nur einmal mit einem Server verbinden, nach dem Trennen der Verbindung muss der Launcher neu gestartet werden. Dies ist möglich, ohne das Spiel zwischendurch schließen zu müssen. -- Wenn die Schaltfläche „Multiplayer“ nicht angezeigt wird, stelle sicher, dass der BeamMP-Mod im „Mod Manager“ vorhanden und aktiviert ist, und drücke dann STRG + L. +- Wenn die Schaltfläche „Multiplayer" nicht angezeigt wird, stelle sicher, dass der BeamMP-Mod im „Mod Manager" vorhanden und aktiviert ist, und drücke dann STRG + L. - VPNs jeglicher Art können Verbindungsprobleme verursachen. +- Beim ersten Start unter Linux Native erstellt der Launcher seine Konfigurationsdatei, was möglicherweise einen GNOME-Dialog „Reagiert nicht" auslöst. Klicke auf „Warten", dies tritt nur einmal auf. - Wenn der Launcher Fehler meldet, lies die [FAQ](https://forum.beammp.com/c/faq/35) . Solltest du weitere Hilfe bei der Installation benötigen, kannst du einen Beitrag in unserem [Forum](https://forum.beammp.com) erstellen oder auf unserem [Discord-Server](https://discord.gg/beammp) nachfragen. From dc6e5cfe1b42dcfb7d6725c78326820e5663fae9 Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sun, 19 Oct 2025 13:16:14 +0200 Subject: [PATCH 006/212] ran german instructions through spell check --- docs/de/game/getting-started.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/de/game/getting-started.md b/docs/de/game/getting-started.md index 5e09680c..a232dac8 100644 --- a/docs/de/game/getting-started.md +++ b/docs/de/game/getting-started.md @@ -29,9 +29,9 @@ BeamMP ist vollständig kompatibel mit Windows und Linux, an der Kompatibilität ### **2b. Linux Installation** -Derzeit musst du den Launcher selbst erstellen. Dazu benötigst du grundlegende Kenntnisse zum Erstellen einer Anwendung. +Derzeit musst du den Launcher selbst kompilieren (erstellen). Dazu benötigst du grundlegende Kenntnisse über den Prozess der Erstellung einer Anwendung (Kompilierung). -Stelle sicher, dass grundlegende Entwicklungstools installiert sind, welche oft in Paketen enthalten sind, zum Beispiel: +Stelle sicher, dass grundlegende Entwicklungstools (Build-Tools) installiert sind, die oft in folgenden Paketen enthalten sind: - Debian: `sudo apt install build-essential` - Fedora: `sudo dnf install cmake gcc gcc-c++ make perl perl-IPC-Cmd perl-FindBin perl-File-Compare perl-File-Copy kernel-headers kernel-devel` @@ -40,7 +40,7 @@ Stelle sicher, dass grundlegende Entwicklungstools installiert sind, welche oft - SteamOS (Arch): `sudo pacman -S base-devel linux-api-headers glibc libconfig` (Du musst auch `sudo steamos-readonly disable` ausführen, schalte es jedoch nach der Installation wieder ein) -Klone `vcpkg`, initialisiere es und füge es zu PATH hinzu +Klone vcpkg, initialisiere es und füge es zur PATH-Umgebungsvariable hinzu. 1. ```bash @@ -63,9 +63,9 @@ Klone das BeamMP-Launcher-Repository mit `git` auf dein System, zum Beispiel: `git clone https://github.com/BeamMP/BeamMP-Launcher.git` [Weitere Informationen zum Klonen eines GitHub-Repos](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) -Lade das "Tag", das für die [neueste Version](https://github.com/BeamMP/BeamMP-Launcher/releases/latest) verwendet wurde. Wenn beispielsweise `v2.3.2` in der neuesten Version verwendet wird, führe `git checkout v2.3.2` aus. +Wechsle zum neuesten "Tag" (Versionsstand). Lade das "Tag" herunter, das für die neueste Version verwendet wurde. Wenn beispielsweise v2.3.2 in der neuesten Version verwendet wird, führe im Repository-Ordner `git checkout v2.3.2` aus. -Im Stammverzeichnis des Projekts, führe aus: +Führe im Stammverzeichnis des Projekts folgende Schritte aus: 1. ```cmake @@ -86,7 +86,7 @@ cmake --build bin --parallel Wenn du -DCMAKE_BUILD_TYPE=Release nicht spezifizierst, erstellst du eine Debug-Version, die zwar eine größere Dateigröße hat, aber nicht den Fehler „Launcher kann sich nur einmal mit einem Server verbinden" enthält. !!!note "Fedora Benutzer" - Wenn vcpkg während der OpenSSL-Kompilierung mit Kernel-Header-Fehlern fehlschlägt, stelle sicher, dass alle Abhängigkeiten installiert sind: + Wenn vcpkg während der OpenSSL-Kompilierung aufgrund von Kernel-Header-Fehlern fehlschlägt, stelle sicher, dass alle Abhängigkeiten installiert sind: ```bash sudo dnf install kernel-headers kernel-devel gcc gcc-c++ make perl ``` @@ -94,7 +94,7 @@ cmake --build bin --parallel ```bash rm -rf $VCPKG_ROOT/buildtrees/openssl ``` - Und wiederhole den cmake-Konfigurationsbefehl. + Und wiederhole den cmake-Konfigurationsbefehl (Schritt 1). Verschiebe die fertige Anwendung aus dem `/bin` Ordner in einen eigenen Ordner und führe sie von dort aus aus: ```bash @@ -105,7 +105,7 @@ cd ~/beammp-launcher ``` !!!note "Konfiguration des nativen Linux-Spielpfads" - Um die native Linux-Version von BeamNG.drive zu verwenden (bessere Leistung als Proton), konfiguriere den Spielpfad in `Launcher.cfg`: + Um die native Linux-Version von BeamNG.drive zu verwenden (was bessere Leistung als Proton bietet), konfiguriere den Spielpfad in der Datei `Launcher.cfg`: Finde deine BeamNG-Installation: ```bash From f8d0e1936fab6794448847956ce21050790e1bba Mon Sep 17 00:00:00 2001 From: Leif Lundberg Date: Sun, 19 Oct 2025 16:13:52 +0200 Subject: [PATCH 007/212] removed unecessary for native build gamepath configuration --- docs/de/game/getting-started.md | 22 ---------------------- docs/en/game/getting-started.md | 22 ---------------------- 2 files changed, 44 deletions(-) diff --git a/docs/de/game/getting-started.md b/docs/de/game/getting-started.md index a232dac8..4d22bcbf 100644 --- a/docs/de/game/getting-started.md +++ b/docs/de/game/getting-started.md @@ -104,28 +104,6 @@ cd ~/beammp-launcher ./BeamMP-Launcher ``` -!!!note "Konfiguration des nativen Linux-Spielpfads" - Um die native Linux-Version von BeamNG.drive zu verwenden (was bessere Leistung als Proton bietet), konfiguriere den Spielpfad in der Datei `Launcher.cfg`: - - Finde deine BeamNG-Installation: - ```bash - find ~/.steam ~/.local/share/Steam -name "BeamNG.drive.x64" 2>/dev/null - ``` - - Erstelle oder bearbeite `~/beammp-launcher/Launcher.cfg`: - ```json - { - "Port": 4444, - "Build": "Default", - "CachingDirectory": "./Resources", - "GamePath": "$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64" - } - ``` - - Häufige Pfade: - - `$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` - - `$HOME/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` - Der native Linux BeamMP-Launcher wird gestartet und verwendet das native Linux BeamNG.drive ### **2c. Nutzung BeamNG.drive mit Proton** diff --git a/docs/en/game/getting-started.md b/docs/en/game/getting-started.md index 0f381e67..770ccdb5 100644 --- a/docs/en/game/getting-started.md +++ b/docs/en/game/getting-started.md @@ -105,28 +105,6 @@ cd ~/beammp-launcher ./BeamMP-Launcher ``` -!!!note "Configuring Native Linux Game Path" - To use the native Linux version of BeamNG.drive (better performance than Proton), configure the game path in `Launcher.cfg`: - - Find your BeamNG installation: - ```bash - find ~/.steam ~/.local/share/Steam -name "BeamNG.drive.x64" 2>/dev/null - ``` - - Create or edit `~/beammp-launcher/Launcher.cfg`: - ```json - { - "Port": 4444, - "Build": "Default", - "CachingDirectory": "./Resources", - "GamePath": "$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64" - } - ``` - - Common paths: - - `$HOME/.steam/steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` - - `$HOME/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64` - The native Linux BeamMP-Launcher will start and use native Linux BeamNG.drive ### **2c. Using beamNG.drive with Proton** From 6afab23be10ef37f16da0db50fec473beffede6f Mon Sep 17 00:00:00 2001 From: Ace06_10010 Date: Mon, 20 Oct 2025 05:47:41 +0000 Subject: [PATCH 008/212] Translate vehicles.md via GitLocalize --- docs/zh/beamng/dev/content/vehicles.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 docs/zh/beamng/dev/content/vehicles.md diff --git a/docs/zh/beamng/dev/content/vehicles.md b/docs/zh/beamng/dev/content/vehicles.md new file mode 100644 index 00000000..b86ed313 --- /dev/null +++ b/docs/zh/beamng/dev/content/vehicles.md @@ -0,0 +1,21 @@ +!!!警告“此网站正在建设中!” + +``` +这个网站正在积极建设中。 + +觉得你能帮忙吗?请用右边的铅笔点击页面! + +这也可以在任何页面上完成。 +``` + +# 车祸模拟器 创建车辆 + +。。。 + +## 介绍 + +。。。 + +## 开始进行 + +。。。 From aa3062f2bf0181e42c5e7d65a283ef5d192c2192 Mon Sep 17 00:00:00 2001 From: Ace06_10010 Date: Mon, 20 Oct 2025 05:47:43 +0000 Subject: [PATCH 009/212] Translate ui-apps.md via GitLocalize --- docs/zh/beamng/dev/modding/ui-apps.md | 273 ++++++++++++++++++++++++++ 1 file changed, 273 insertions(+) create mode 100644 docs/zh/beamng/dev/modding/ui-apps.md diff --git a/docs/zh/beamng/dev/modding/ui-apps.md b/docs/zh/beamng/dev/modding/ui-apps.md new file mode 100644 index 00000000..d620d274 --- /dev/null +++ b/docs/zh/beamng/dev/modding/ui-apps.md @@ -0,0 +1,273 @@ +# 图形界面-应用程序 创建 + +为了制作一个图形界面应用程序,你需要一些AngularJS框架的知识,主要的文档可以在这里找到: [AngularJS docs](https://docs.angularjs.org/guide) + +## 文件结构 + +一个图形界面应用程序需要四个重要的文件才能工作: + +- app.js | 包含图形界面应用程序使用的主要代码 [Javascript docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript) +- app.html | 显示应用程序的代码 [Html docs](https://developer.mozilla.org/fr/docs/Web/HTML) +- app.json | 包含图形界面应用程序的信息 +- app.png | 显示在应用程序选择器中的图像文件 + +### 图形界面应用程序 样式 + +我们建议使用 `