Git Product home page Git Product logo

kun-galgame-nuxt3's Introduction

Hey, I'm KUN ~ ♡

It's a great honor that you can see this.

I'm currently busy, so I won't be able to write code for a while. If you have any questions or would like to collaborate, feel free to join the telegram group

ぱくぱく, バカバカ, むぎゅむぎゅ, ややや ~ もう一回! ~ ぱくぱく, バカバカ, むぎゅむぎゅ, ややや

kun-galgame-nuxt3's People

Contributors

cloudeasoft avatar haruki-nikaidou avatar hash070 avatar kazariex avatar kun1007 avatar montagnewang avatar nonhana avatar yixiaojiu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

kun-galgame-nuxt3's Issues

Unexpected additional characters appear in replies on the Kungalgamer reply subpage

Description:

When viewing my own replies on the Kungalgamer reply subpage, I have noticed the appearance of unexpected additional characters. These characters are not part of my original input and seem to be a bug in the markdownToText() function. It seems that the reply was recognized as javascript, but the markdown util cannot split javascript label from the text body.

Steps to Reproduce:

Reply to a topic with "兄弟,我也想... ^_^"
Navigate to the Kungalgamer reply subpage.
Locate and view one of my own replies.
Observe the presence of unexpected additional characters within the reply.

Screenshot:
1712111844355.png

Locations:

{{ markdownToText(replyData.content) }}

export const markdownToText = (markdown: string) => {

以开发模式启动后报错提示找不到 sharp 模块

复现过程:
1 拉取最新代码
2 执行 pnpm i
3 执行 pnpm dev --host 启动项目,出现以下报错:

Cannot find module '../build/Release/sharp-linux-x64.node'
Require stack:

Possible solutions:

  • Install with verbose logging and look for errors: "npm install --ignore-scripts=false
    --foreground-scripts --verbose sharp"
  • Install for the current linux-x64 runtime: "npm install --platform=linux --arch=x64 sharp"
  • Consult the installation documentation: https://sharp.pixelplumbing.com/install
    at Object. (node_modules/.pnpm/[email protected]/node_modules/sharp/lib/sharp.js:37:9)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Module._load (node:internal/modules/cjs/loader:1023:12)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at require (node:internal/modules/helpers:176:18)
    at Object. (node_modules/.pnpm/[email protected]/node_modules/sharp/lib/constructor.js:11:1)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)

使用 Possible solutions 给的解决办法无效,最终是参考此文章安装了sharp,具体命令是:
pnpm add --no-optional=false sharp@latest

但是不清楚为何 pnpm i 没有自动安装依赖软件包,是不是需要改一下项目配置之类的呢?

Scoped scss issue in the project

本工程使用了scss,并且大量的在不同的Vue组件中使用了scoped scss块;这虽然使得所有组件的样式对开发者而言变得清晰可见,但同时也引入了大量的重复代码。

例如,所有的类似对话框的组件(capture、alert等)都需要加一个背景Mask;而这些mask的scss实际上几乎完全一致。如果想要进一步对本组件的mask进行个性化,完全可以在scoped里单独描写,没必要复制一遍10行的.mask{blahblah}。同理,部分选择器.container, .confirm-btn之类的也可以提到全局的样式表中,没必要针对每个组件写一次。

目前个人能想到的这一行为的缺点有如下几个:

  1. css被隐藏到全局,开发者可能会忘记class对应的意义;
  2. 全局css膨胀可能导致网站第一次加载速度下滑;

但这一行为的好处也同样明显,一来至少不用复制粘贴,二来组件的大小降低了,三来scss行数缩短也可以突出整个组件配置的重点;此外scoped scss也可以通过@extend等特性活用全局的scss。因此想提个issue询问下这个是design的一部分还是可以优化的点

(在写bug的12和需求的2,但这俩都需要dialog,这个问题就很明显)

顺带一提,这个过程确实有点像重新发明UI框架

[Suggestion] Split User Table into User and UserProfile

Description:

Currently, the user table combines authentication and profile data. For better scalability and maintainability, I suggest splitting it into two separate tables: user for authentication and userprofile for profile information.

Rationale:

Separation of Concerns: Clearer division between authentication and profile data.

Flexibility: Easier to modify profile fields without affecting authentication.

Scalability: Optimized database performance for frequent profile updates.

想要的功能(转自论坛)

话题分区功能,将话题分为不同的类

头像旋转裁剪更改大小功能

分区功能,资源,随笔,详细赏析,分类推荐,xp鉴赏

登录界面人机验证优化,回车键登陆

调整论坛透明度

音乐播放器

话题内点击链接是在新标签页打开而不是在本页面打开

删除话题

私聊功能

收藏功能

关注别人功能

头像框功能

Ctrl+Enter直接发帖

优化论坛路由,增加国际化路由

论坛管理系统抓紧开发

首页话题分类

去除评论点赞点踩功能

关于登录页

登录和人机验证可以一体化,没必要多个按钮
我的想法是,去掉人机验证按钮,留下登录按钮,
点登录需要验证就弹窗,点完提交就登录,
不需要验证那就直接登录。

Fixed History List Unexpectedly Scrolls on Text Selection

This list should be fixed and non-scrollable in the x-direction. However, when you select a piece of text and swipe the mouse to the right, the entire list unexpectedly slides to the left and hides a portion of it. This issue requires attention and needs to be fixed.
image

建议

1.要是“话题链接”能直接到某一楼就好了
这样也没必要私聊
2.每一楼的高度太高,有很多空白,导致往下翻要翻好久,建议压缩高度,可以参考kf
3.
Screenshot_20240222_133905_com microsoft emmx
每个话题占地面积太大,显示一部分内容反而觉得很乱,建议只显示作者,标签,观看数和喜欢数

版规草稿

总:
1.禁止辱骂他人
2.禁止打探他人私人信息(如具体地址、姓名、手机号等)
3.禁止讨论政治(可以讨论社会现象,但不允许对具体的guanyuan和zhengfu做出评价,发现有明确讨论政治的直接ban)
4.发布帖子要在对应的区域
5.禁止引流、冒充他人
6.发现有故意损害论坛的直接ban

管理员:
1.对成员进行处理时要说明理由
2.设置奖励额度(每天50萌萌点),惩罚额度不限(具体如何惩罚视情况而定,需要讨论)

Unexpected Closure of Search Mask When Using @click Directive with MouseDown Inside and MouseUp Outside

Description

When utilizing the @click directive, an unexpected behavior occurs. If a user presses the mouse button down on an inner element, but releases the button outside of this area (on the mask element), the mask element is unexpectedly closed. This inconsistent behavior can lead to confusion and potentially poor user experience.

Address:

The issue can be traced to the code located at the following GitHub repository and file path:

<div class="mask" v-if="isShowSearch" @click="isShowSearch = false">
<div ref="container" class="container" @click.stop>

Solution

Use @mousedown instead of @click.

Bug?

当访问论坛根目录下不存在的界面并不会跳转到404
image
并且当在404界面点击一键转生为萝莉会返回首页到首页的语言并没有对应
image
image

群友意见(摘抄)

1.答题不要翻译成英文,根本看不懂
2.我这边过几天要重新登录一次
發帖發一半告訴我過去很煩人那
能不能自定義有效期
3.kun的论坛居然不支持2fa

希望管理后台拥有的功能

1.私聊(其他用户可以没有,但管理必须有)

2.发布公告

3.顶置帖子

4.强制删帖

5.查看点击次数是否异常

6.查看被删的帖子

7.扣除萌萌点

8.封号,并使被封号人在被封后可以看到管理写的原因(比如发到邮箱),封号要连邮箱一起封

9.管理可以设置精华评论,精华帖子,并可以让自己有关管理的评论显得特殊(如特殊颜色)

建议设置五到六个管理

希望有的分区

1.资源发布区(1)
2.自由讨论区(1)
3.问题、建议反馈区(鲲)
4.Galgame讨论区(1)
5.水贴区
6.新人报道区
7.求物区(参考kf)(这三个区1)
没必要像kf一样弄那么多分区
括号后的数字是我认为需要的管理人数
等以后人变多了再增加

Uncaught (in promise) non-precached-url: non-precached-url :: [{"url":"/"}]

The error occurred during deployment after running pnpm build (at this time, the version of @vite-pwa/nuxt was 0.4.0). This error was due to configuration issues with PWA.
After upgrading the version of @vite-pwa/nuxt to 0.6.0, the error disappeared.
However, we still suspect that our PWA configuration may not be best practice. If you have relevant configuration experience, feel free to point it out.

  pwa: {
    registerType: 'autoUpdate',
    // Disable pwa in development environment
    disable: process.env.NODE_ENV === 'development',
    manifest: {
      name: 'KUN Visual Novel',
      short_name: 'KunGal',
      theme_color: '#218bff',
      icons: [
        {
          src: 'pwa/pwa-192x192.png',
          sizes: '192x192',
          type: 'image/png'
        },
        {
          src: 'pwa/pwa-512x512.png',
          sizes: '512x512',
          type: 'image/png'
        },
        {
          src: 'pwa/pwa-512x512.png',
          sizes: '512x512',
          type: 'image/png',
          purpose: 'any maskable'
        }
      ]
    },
    workbox: {
      globPatterns: ['**/*.{js,css,png,webp,svg,ico}'],
      navigateFallback: null
    },
    client: {
      installPrompt: true
    },
    devOptions: {
      enabled: true,
      suppressWarnings: true,
      navigateFallback: '/',
      navigateFallbackAllowlist: [/^\/$/],
      type: 'module'
    }
  }

The affected package versions are

"nuxt": "^3.9.3",

Updating the package version may lead to new unexpected errors

The use of WebSocket or Socket.IO in Nuxt3

In our current project, we need to handle real-time messages, so WebSocket is required. In the current version (2.8.10), we have used Socket.IO as our choice for message notifications.
However, we cannot properly adapt it to Nuxt3. Although the current project does not throw errors, after updating all package versions to the latest(such as Nuxt 3.11.x), there are still some temporarily unresolved errors, such as: socket__io-client WebSocket connection to failed: Invalid frame header.
We apologize for this inconvenience. If you have experience with WebSocket or Socket.IO, please feel free to contact us.

Duplicate Loading of Home Page Topics

This is a minor issue that can be ignored because the error rate is not high. If the number of forum visitors increases in the future, certain measures will be taken.

Explanation:

The topics on the homepage are sorted based on the update time, where actions like liking or visiting a topic are considered updates.

During the process of loading new topics while scrolling down the page, the timestamp changes. If someone updates the status of a topic during this timeframe, it alters the overall sorting of topics.

So, if pagination is performed on this updated topic, the pagination result will be in the order of the latest timestamped topics. This can lead to the last few topics from the previous pagination being requested again, resulting in the rendering of duplicated topics.

Unnecessary <NuxtPage> in components.kun.Layout.vue

In [Layout.vue], it looks like this.

<template>
  <div class="app" :style="{ backgroundImage: `url(${imageURL})` }">
    <div class="top-bar">
      <KunTopBar />
    </div>
    <NuxtPage />
  </div>
</template>

But in [app.vue], the [Layout.vue] was used as a component with a slot tag

<template>
  <!-- ...... -->
  <KunLayout>
    <NuxtPage />
  </KunLayout>
</template>

Please remove the tracker!

We found the following code snippet on your website

<script async="" src="https://www.googletagmanager.com/gtag/js?id=G-82LF33PB7T"></script>

This is the Google Tag Manager, a web tracker that collaborates with Google Ads to facilitate ad tracking and logging.
Clearly, this contradicts the description in the README.md, which states:

### 3\. NO ADs Forever

Literally, **the website will never have any form of advertisements**. We believe a good forum should not have any advertising. If you find something resembling an ad, please report it. If 10 people report it, the topic will be locked.

To summarize, please remove the tracker!

[Feature Request] Do not allow scrollbars to appear on the page

The editor Milkdown already slides, so it doesn't make sense to make the whole page slide again.

However, at more extreme screen sizes, this may result in the editor not being used, and more testing is needed.

Consider adding a button to the side of the editor to make it selectable. Or testing to automatically apply different effects to different screen sizes.

The homepage has the same problem.

bug

Screenshot_20240221_130408_com microsoft emmx
Screenshot_20240221_130401_com microsoft emmx
Screenshot_20240221_130343_com microsoft emmx
Screenshot_20240221_130341_com microsoft emmx
这个消息提示系统明显有问题
而且是两种不同的bug
一种是无信息但提示有
一种是有信息但不提示

Sidebar and setting page are unavailable on iPad Portrait

Description

When screen width is 700px to 1000px, there is no way to set the language.
The setting icon in right corner beside the avatar is hidden, but the menu button in the left corner is not shown.
iPad (except Pro) has a width of 768px in Portrait orientation.

Here attaches a screenshot to demonstrate this issue. The screenshot is in Firefox but the result looks the same.

image

Corresponding Code

@media (max-width: 1000px) {
.settings {
display: none !important;
}

@media (max-width: 700px) {
.kungalgame {
display: none;
}
.hamburger {
display: block;
}
}

The side navigation bar is also inaccessible:

@media (max-width: 1000px) {
.aside {
display: none;
}
}

Suggested Solution

Redesign the layout for iPad.

杀虫与建议

1.规定里说,在12小时内被推的话题有流光样式,且显示已落实,但实际上并没有实现
2.签到功能只能使用一次。
3.最近出现了很多反复刷帖提热度的现象,如帖子“Yourku”“啊这可不行”
4.删帖应该保证已获得的踩和赞不会改变,且需要消耗萌萌点,管理员能看到被删帖的内容并加以审核,如果是言行不当,且访问人数和踩超过一定数量的应该有惩罚。
5.规定应该制定明确,比如什么样的算是引流与广告,宣传自己的QQ群算不算引流
6.私聊功能!如果网站预算不够,至少管理员要有这个权限。
7.应该规定,不得打探或泄露个人信息,如住址,电话号码,身份证。对于联系方式,要谨慎。

变更部分链接点击行为为打开,而非复制

Screenshot_20240626-011428_Firefox~2
如图所示,点击链接从直觉而言应该是打开而非复制。

因为此处使用了蓝色的字体,蓝色字体在其他地方一般是超链接的含义,这种设计很不符合直觉。
并且站点内普通帖子的超链接使用的是普通超链接。
混合使用的行为更加....

建议统一为点击打开链接。

Add a “Return” button in topic detail page.

My opinion: In the current version, in order to return to the [Topic Pool] page or other entries(such as [Topic Categories], hot list), users either have to press the browser's back button or renavigate from the Topbar, which may can be inconvenient for them.
image

This is just a suggestion, as clicking the browser's back button isn't particularly cumbersome. However, based on application grahpic interfaces, I believe it would be beneficial to include a dedicated back button for convenience.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.