Scholar-Compass / content

帮助高三毕业生更好地择校选专业。
https://scholar-compass.github.io/content/
3 stars 2 forks source link

集成机器人 #9

Closed YDX-2147483647 closed 5 months ago

YDX-2147483647 commented 7 months ago

集成 https://github.com/Scholar-Compass/Scholar-Compass-front 的 GPT 机器人。

考虑过同样基于 React 的 Docusaurus,不过 MkDocs 更简单……


原来大概是给docs/index.md单独配个模板home.html

相关链接

废案

Use React for an entire subroute of an existing website Based on https://github.com/Scholar-Compass/Scholar-Compass-front/commit/e5f70fe. `next.config.js`: ```diff /** @type {import('next').NextConfig} */ -const nextConfig = {}; +const nextConfig = { + output: 'export', + basePath: '/content/bot', + trailingSlash: true, +}; ```
YDX-2147483647 commented 6 months ago

试了试去掉 Next.js,遇到@chakra-ui/next-jsCacheProvider不知如何处理。在最新版中,CacheProvider已经无用了(https://github.com/chakra-ui/chakra-ui/commit/6e2b976d5bb932bfd9399eacd2819c0bb9d56445 ),不过还没发布;Getting Started with Next.js (App) - Chakra UI 也没提及CacheProvider

YDX-2147483647 commented 6 months ago

overrides/partials/palette.html

{#-
  我们要向`{% block header %}`加上机器人按钮,加在调色板之后。然而 mkdocs-material 的`{% block header %}`太复杂,遂转而修改`palette.html`。具体来说,先抄录`palette.html`原有内容,再在后面加上机器人。

  目前采用的`palette.html`版本如下,若 mkdocs-material 有修改,我们应跟随。
  https://github.com/squidfunk/mkdocs-material/blob/c8a2142263e5b8542c4546644b73d354850253b4/src/templates/partials/palette.html
-#}
{#-
  Copyright (c) 2016-2024 Martin Donath <martin.donath@squidfunk.com>

  Permission is hereby granted, free of charge, to any person obtaining a copy
  of this software and associated documentation files (the "Software"), to
  deal in the Software without restriction, including without limitation the
  rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  sell copies of the Software, and to permit persons to whom the Software is
  furnished to do so, subject to the following conditions:

  The above copyright notice and this permission notice shall be included in
  all copies or substantial portions of the Software.

  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
  IN THE SOFTWARE.
-#}
<!-- Color palette toggle -->
<form class="md-header__option" data-md-component="palette">
  {% for option in config.theme.palette %}
    {% set scheme  = option.scheme  | d("default", true) %}
    {% set primary = option.primary | d("indigo", true) %}
    {% set accent  = option.accent  | d("indigo", true) %}
    <input
      class="md-option"
      data-md-color-media="{{ option.media }}"
      data-md-color-scheme="{{ scheme | replace(' ', '-') }}"
      data-md-color-primary="{{ primary | replace(' ', '-') }}"
      data-md-color-accent="{{ accent | replace(' ', '-') }}"
      {% if option.toggle %}
        aria-label="{{ option.toggle.name }}"
      {% else %}
        aria-hidden="true"
      {% endif %}
      type="radio"
      name="__palette"
      id="__palette_{{ loop.index0 }}"
    />
    {% if option.toggle %}
      <label
        class="md-header__button md-icon"
        title="{{ option.toggle.name }}"
        for="__palette_{{ loop.index % loop.length }}"
        hidden
      >
        {% include ".icons/" ~ option.toggle.icon ~ ".svg" %}
      </label>
    {% endif %}
  {% endfor %}
</form>
{#-
  以上是`palette.html`原有。
  以下是新增。
-#}
{% include "partials/bot.html" %}
YDX-2147483647 commented 6 months ago

改用 Vite 成功嵌入了,但感觉需要改不少……

https://github.com/YDX-2147483647/Scholar-Compass-front/commit/219dd0302689e744a6563eebc0754d5773efeb6f

YDX-2147483647 commented 5 months ago

现已集成到 https://scholar-compass.github.io/content/bot/

现在集成的机器人还有些细节问题(例:在宽屏字体稍大),这些日后再改。