简介
做一个通用母程序(类似浏览器),然后各个子程序(app)居于网页 html+javascript,支持访问系统和硬件等各种接口权限.
子程序支持在远端(类似微信小程序),也支持本地(类似安装到了本地).
- 离线/在线小程序(插件)
- 自由扩展,方便通过小程序(插件)的方式,自由增加功能.
其中小程序可以制作任何工具软件, 参照vscode的插件模式,基本无所不能.

API接口
除了支持浏览器网页的功能,额外增加暴露了各种API,方便实现更多的功能, 最底层的包括
fs - 文件系统操作
用于读写文件、目录操作等。支持同步和异步 API。const fs = require('fs'); fs.readFile('path/to/file.txt', (err, data) => { if (err) throw err; console.log(data.toString()); });path - 路径处理
用于处理和转换文件路径,提供跨平台的路径操作。const path = require('path'); const filePath = path.join(__dirname, 'public', 'index.html');os - 操作系统信息
获取系统信息,如 CPU、内存、用户信息等。const os = require('os'); console.log(`CPU 核心数: ${os.cpus().length}`);http/https - HTTP 服务器与客户端
用于创建 HTTP 服务器或发起 HTTP 请求。const http = require('http'); http.createServer((req, res) => { res.end('Hello World!'); }).listen(3000);url - URL 解析
用于解析和处理 URL 字符串。const url = require('url'); const parsedUrl = url.parse('https://example.com/path?query=value');events - 事件模块
实现事件驱动编程,通过EventEmitter类创建自定义事件。const EventEmitter = require('events'); const emitter = new EventEmitter(); emitter.on('message', (msg) => console.log(msg)); emitter.emit('message', 'Hello!');util - 工具函数
提供实用工具方法,如回调转 Promise、类型检查等。const util = require('util'); const fs = require('fs'); const readFile = util.promisify(fs.readFile);child_process - 子进程管理
用于创建和控制外部进程。const { exec } = require('child_process'); exec('ls -la', (error, stdout, stderr) => { /* ... */ });stream - 流处理
用于高效处理大量数据,如文件流、网络流等。const fs = require('fs'); const readStream = fs.createReadStream('large-file.txt'); readStream.on('data', (chunk) => { /* 处理数据块 */ });crypto - 加密与哈希
提供加密和解密功能,如哈希、签名、加密算法等。const crypto = require('crypto'); const hash = crypto.createHash('sha256').update('data').digest('hex');- net 模块(TCP Socket)
用于创建基于 TCP 协议的网络套接字,支持服务器和客户端模式。
示例代码(TCP 服务器):
const net = require('net');
// 创建 TCP 服务器
const server = net.createServer((socket) => {
console.log('客户端已连接');
// 接收客户端数据
socket.on('data', (data) => {
console.log(`收到数据: ${data.toString()}`);
socket.write('服务器已收到消息');
});
// 客户端断开连接
socket.on('end', () => {
console.log('客户端已断开');
});
});
server.listen(3000, () => {
console.log('服务器已启动,监听端口 3000');
});示例代码(TCP 客户端):
const net = require('net');
// 创建 TCP 客户端
const client = net.createConnection({ port: 3000 }, () => {
console.log('已连接到服务器');
client.write('Hello, Server!');
});
// 接收服务器响应
client.on('data', (data) => {
console.log(`服务器响应: ${data.toString()}`);
client.end(); // 关闭连接
});
client.on('end', () => {
console.log('已断开与服务器的连接');
}); 最后一次更新于2025-06-09


