1
0
Fork 0

Espruino IDE spidered for offline use

This commit is contained in:
Agent725 2025-11-08 18:31:30 +01:00
parent 13f37a2d4b
commit 7446d2d3ac
22 changed files with 143418 additions and 0 deletions

8
EspruinoIDE/README.txt Normal file
View File

@ -0,0 +1,8 @@
HOW TO USE
Use this IDE in Chromium! It has the ability to connect via serial (USB).
Drag index.html into an empty Chromium tab, and connect to your Espruino.
Have a lot of fun!

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

BIN
EspruinoIDE/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
EspruinoIDE/img/icons.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

3657
EspruinoIDE/index.css Normal file

File diff suppressed because one or more lines are too long

137
EspruinoIDE/index.html Normal file
View File

@ -0,0 +1,137 @@
<!DOCTYPE html>
<html><!-- index for ws.js or totally online Web IDE -->
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=0.8, maximum-scale=0.8, user-scalable=no, interactive-widget=resizes-content" />
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta name="mobile-web-app-capable" content="yes"/>
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- Web Serial Origin Trial - www.espruino.com -->
<meta http-equiv="origin-trial" content="AjRdPA+O3VUML2r8/U0gIUmgBgZLDktY1Kypa8hjMesuKpbfYhXRrWHgjGp7f2Yd5sM36E4+TZdkSHewx27wOgUAAABQeyJvcmlnaW4iOiJodHRwczovL3d3dy5lc3BydWluby5jb206NDQzIiwiZmVhdHVyZSI6IlNlcmlhbCIsImV4cGlyeSI6MTU4OTM1NzgxNn0=">
<link rel="icon" href="favicon.ico">
<link rel="manifest" href="webapp_manifest.json">
<link rel="stylesheet" href="index.css"/>
<script>
// Force HTTPS - needed for web bluetooth
var l = window.location.toString();
if (l.substr(0,7)=="http://" && !window.location.port)
window.location = "https://"+l.substr(7);
</script>
<title>Espruino Web IDE</title>
</head>
<body>
<div class="window window--app">
<!-- Title Bar -->
<div class="window__title-bar title-bar" style="-webkit-app-region: drag">
<h5 class="title-bar__title">Espruino Web IDE</h5>
<div class="title-bar__buttons"></div>
</div>
<!-- Viewport -->
<div class="window__viewport">
<!-- Toolbar -->
<div class="toolbar">
<div class="h-split">
<div class="h-split__left toolbar__buttons toolbar__buttons--left"></div>
<div class="h-split__right toolbar__buttons toolbar__buttons--right"></div>
</div>
</div>
<!-- Splitter -->
<div class="split-pane">
<div class="split-pane__left">
<div class="split-pane__loading">LOADING ...</div>
<div class="editor editor--terminal">
<div class="sidebar editor__sidebar">
<div class="v-split">
<div class="v-split__top sidebar__buttons sidebar__buttons--top"></div>
<div class="v-split__bottom sidebar__buttons sidebar__buttons--bottom"></div>
</div>
</div>
<div class="canvas editor__canvas editor__canvas__terminal"></div>
</div>
</div>
<div class="split-pane__right">
<div class="editor editor--code">
<div class="sidebar editor__sidebar">
<div class="v-split">
<div class="v-split__top sidebar__buttons sidebar__buttons--top"></div>
<div class="v-split__bottom sidebar__buttons sidebar__buttons--bottom"></div>
</div>
</div>
<div class="canvas editor__canvas"></div>
</div>
</div>
</div>
<!-- Status -->
<div class="status">
<div class="h-split">
<div class="h-split__left status__left"></div>
<div class="h-split__right status__right"></div>
</div>
</div>
</div>
</div>
<script src="index.js"></script>
<!-- load console here, so we get any messages while loading -->
<!-- SERIAL_INTERFACES -->
<!-- Electron / nw.js -->
<!-- WebRTC/Peer.js connection -->
<!-- Popup Windows -->
<!-- Special pages in Settings Window -->
<!-- Non-vital Plugins -->
<!-- needed for unicode -->
<!-- needed for minify -->
<!-- needed for minify -->
<!-- needed for minify -->
<!-- This should come before saveOnSend -->
<!-- This should come after minify -->
<!-- This should come after save on send -->
<!-- js/plugins/fileReload.js BROKEN -->
<!-- smart autocomplete -->
<!-- for storage.js -->
<!-- Onscreen buttons when running on Android -->
<!-- js/plugins/_examplePlugin.js -->
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-ZKP1D1PY6Q"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-ZKP1D1PY6Q');
// register service worker on known origins
if (window.location.origin == "https://www.espruino.com") {
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('serviceworker.js').then(function(reg) {
if(reg.installing) {
console.log('serviceworker> installing');
} else if(reg.waiting) {
console.log('serviceworker> installed');
} else if(reg.active) {
console.log('serviceworker> active');
}
}).catch(function(error) {
console.log('serviceworker> registration failed with ' + error);
});
}
}
</script>
</body>
</html>

139592
EspruinoIDE/index.js Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,24 @@
{
"name": "Espruino Web IDE",
"short_name": "Espruino IDE",
"description": "A Terminal and Graphical code Editor for Espruino JavaScript Microcontrollers",
"display": "standalone",
"start_url": ".",
"icons": [
{
"sizes": "128x128",
"src": "img/icon_128.png",
"type": "image/png"
},
{
"sizes": "256x256",
"src": "img/icon_256.png",
"type": "image/png"
},
{
"sizes": "512x512",
"src": "img/icon_512.png",
"type": "image/png"
}
]
}