<p dir="auto">Part of what made node.js take off so much wasn't the http server,  but rather, the runtime's ability to allow developers to use JS to write a server, mobile app, and even hardware.</p>
<p dir="auto">In that same spirit, wouldn't it be advantageous to add direct support for serial, usb, ble, etc?</p>
<p dir="auto">Also if the goal is to make it more "web like" or webby,  adding support for modern <a href="https://developer.mozilla.org/en-US/docs/Web/API" rel="nofollow">web API's</a> like <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="627466603" data-permission-text="Title is private" data-url="https://github.com/denoland/deno/issues/5954" data-hovercard-type="issue" data-hovercard-url="/denoland/deno/issues/5954/hovercard" href="https://github.com/denoland/deno/issues/5954">#5954</a> mentions could be really help this.</p>
<p dir="auto">There are also other API's beyond Serial API and the Native File System API, that could definitely help bring native-like app and hardware development to deno such as:</p>
<p dir="auto">Browser Debugging:</p>
<ul dir="auto">
<li><a href="https://chromedevtools.github.io/devtools-protocol/" rel="nofollow">Dev Tool Protocol</a></li>
<li>Would adding out of the box support for this drastically aid debugging between the server and client communication?</li>
<li>What about browserfy-like opening, refreshing, or even cross-browser visual testing?</li>
<li>Chrome, chromium-edge and <a href="https://docs.firefox-dev.tools/backend/protocol.html" rel="nofollow">firefox</a> all use it (if I'm not mistaken).</li>
</ul>
<p dir="auto">Native / Mobile App API's</p>
<ul dir="auto">
<li><a href="https://browserobo.github.io/WebI2C/" rel="nofollow">I2C</a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/USB" rel="nofollow">USB</a></li>
<li><a href="https://github.com/svendahlstrand/web-serial-api">web serial</a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Sensor_APIs" rel="nofollow">sensor APIs</a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API" rel="nofollow">Web Bluetooth API </a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Geolocation_API" rel="nofollow">Geolocation</a></li>
</ul>
<p dir="auto">Light weight Database Stuff also addresses <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="620542096" data-permission-text="Title is private" data-url="https://github.com/denoland/deno/issues/5605" data-hovercard-type="issue" data-hovercard-url="/denoland/deno/issues/5605/hovercard" href="https://github.com/denoland/deno/issues/5605">#5605</a></p>
<ul dir="auto">
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API" rel="nofollow">IndexDB</a></li>
<li><a href="https://www.w3.org/TR/webdatabase/" rel="nofollow">WebSQL</a></li>
</ul>
<p dir="auto">[Others Worth considering] (<a href="https://www.creativebloq.com/features/15-web-apis-youve-never-heard-of" rel="nofollow">https://www.creativebloq.com/features/15-web-apis-youve-never-heard-of</a>)</p>
<p dir="auto">This is a list to track the Web APIs (as per <a href="https://developer.mozilla.org/en-US/docs/Web/API" rel="nofollow">MDN API specifications list</a>) that are implemented in Deno.</p>
<ul class="contains-task-list">
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Ambient Light Events</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Background Tasks</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Beacon</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Bluetooth API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Broadcast Channel API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> CSS Counter Styles</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> CSS Font Loading API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> CSSOM</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Canvas API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Channel Messaging API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Console API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Credential Management API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> DOM</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Encoding API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Encrypted Media Extensions</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Fetch API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> File System API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Frame Timing API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Fullscreen API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Gamepad API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Geolocation API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> HTML Drag and Drop API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> High Resolution Time</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> History API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Image Capture API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> IndexedDB</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Intersection Observer API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Long Tasks API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Media Capabilities API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Media Capture and Streams</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Media Session API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Media Source Extensions</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> MediaStream Recording</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Navigation Timing</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Network Information API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Page Visibility API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Payment Request API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Performance API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Performance Timeline API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Permissions API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Pointer Events</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Pointer Lock API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Proximity Events</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Push API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Resize Observer API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Resource Timing API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Server Sent Events</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Service Workers API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Storage</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Storage Access API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Streams</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Touch Events</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> URL API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Vibration API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Animations</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Audio API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Authentication API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Crypto API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Notifications</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Web Storage API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Web Workers API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> WebGL</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> WebRTC</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> WebVR API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> WebVTT</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> WebXR Device API</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Websockets API</p>
</li>
</ul>