# CodeSharePage **Repository Path**: lemon399/code-share-page ## Basic Information - **Project Name**: CodeSharePage - **Description**: No description available - **Primary Language**: JavaScript - **License**: Unlicense - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-09 - **Last Updated**: 2025-09-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 主页代码分享 使用 [React](https://react.dev/) 和 [MDUI 2](https://www.mdui.org/zh-cn/) 构建的套壳浏览器自定义主页的代码分享页面,带有代码编辑/压缩/格式化功能。 部署于 [GitLab 点此访问](https://lemon399.gitlab.io/page/code-share-page/) 本项目使用 [Unlicense](http://unlicense.org) 发布,没有任何要求和担保,你想做什么都可以 本项目包含了许多开源组件的代码,感谢这些个人、社区和组织的无私奉献!使用的开源组件参见 [列表](./license-list.txt) 和 [许可声明](https://lemon399.gitlab.io/page/code-share-page/disclaimer.html) ### 主页定制开发者如何使用 主页开发者需要按下面说明将包含主页代码的备份配置上传到公开的平台,提供文件地址供页面读取 #### 上传平台要求 1. 平台需要直接暴露原文件 (RAW) ,而不是有代码高亮/一键复制/预览/下载 的网页 2. 平台需要允许远程 js 访问原文件,具体来说,需要有 `Access-Control-Allow-Origin: *` 响应标头 建议上传到在线源代码仓库,以下是已知部分仓库的问题: - GitLab: 注册和登录时需要注意地区限制 - GitHub: 需要使用 RAW 加速服务来保证访问成功率 - Gitee: 无法使用,未登录用户无法访问 RAW #### Via 1. 建议使用清除数据的空 Via 浏览器 (如果你主用 Via 可以安装谷歌版本) 2. 同意协议后,在 设置 > 定制 使用你的代码,最好不要修改其它设置 3. 设置 > 通用 > 导出数据,只勾选 “设置” 4. 解压导出的压缩包,将里面的 `settings.txt` 上传到平台,主文件名可以随意修改,扩展名不要修改 5. 得到平台的 RAW 地址,接到 `https://lemon399.gitlab.io/page/code-share-page/code?url=` 后面即可,例如 `https://lemon399.gitlab.io/page/code-share-page/code?url=https://lemon399.gitlab.io/page/code-share-page/settings-search-history.txt` #### 雨见/可拓/Rains 1. 建议使用清除数据的空浏览器(这几个的备份格式应该通用...) 2. 同意协议和初始化后,在 设置 > 外观设置 > 主页设置 选择“代码主页”并使用你的代码 3. 设置 > 备份/恢复 > 导出数据,只勾选 “常规设置(非全部)” 4. 将导出的 `yjdata_*.back` 扩展名改为 `.zip` 并解压,将里面的 `setting.back` 上传到平台,主文件名可以随意修改,扩展名不要修改 5. 得到平台的 RAW 地址,接到 `https://lemon399.gitlab.io/page/code-share-page/code?url=` 后面即可,例如 `https://lemon399.gitlab.io/page/code-share-page/code?url=https://lemon399.gitlab.io/page/code-share-page/setting-history.back` ### 自行部署与修改代码 需要安装 [Node.js](https://nodejs.org/zh-cn) 版本不低于 20 ,并且需要 [pnpm](https://pnpm.io/) 作为包管理器 ```bash # 如果没有 corepack npm install -g corepack # 切换到项目文件夹 cd code-share-page # 启用 corepack corepack enable # 安装依赖 pnpm i # 然后可以 # 开发调试 pnpm dev # 编译,成品在 dist pnpm build ``` 需要注意的问题: - `public` 文件夹下包含一些测试的浏览器配置,可以删除 - 需要修改 `src/App.tsx` 中 `BrowserRouter` 的 `basename` 属性,以匹配你的部署路径 - 建议修改 `src/LicensePage.tsx` 的作者信息 - 编译时需要从外网下载部分依赖组件的开源许可声明,如果失败,可以将 `vite.config.ts` 中的 `replenishDefaultLicenseTexts: true,` 改为 `replenishDefaultLicenseTexts: false,` 来关闭 - 部署时请注意需要配置服务器,访问 `/code` 和 `/licenses` 时服务器应返回 `index.html` 的内容。 - 如果你是直接挂网页,需要把 `index.html` 复制两份,分别命名为 `licenses.html` 和 `code.html`