Giter VIP home page Giter VIP logo

bizarre-inspirer's Introduction

怪奇灵感生成器

让我列几个词组,看看他们能让你联想到什么:

  • 水晶寄生酒店
  • 霓虹捍卫者
  • 灵体发生器
  • 概念粉饰洗刷器

听起来像是一些小说或者游戏里会出现的名词,对吧?这些词都是由怪奇灵感生成器随机生成的。你在编写故事、创造世界观、设计游戏的时候可能就会需要这样的灵感,而灵感不是时时刻刻都有的,让这个生成器帮你「想一想」,或许能得到一些不错的点子。

使用

你可以直接访问 bi.guhub.cn,或者将怪奇灵感生成器作为 PWA(渐进式应用)安装在你的电脑或者手机等设备上,这样你就可以不打开浏览器随时使用应用,但前提是你的浏览器支持 PWA。

如果你生成了什么有意思的点子,欢迎到讨论区分享给大家!

原理

怪奇灵感生成器的工作原理十分简单。首先,我们把所有会用到的字词都储存在一个 JSON 文件里,名为 words.json,同时,我们将这些词分为了以下几类:

  • 形容词(Adjective)
  • 及物动词(Verb-t)
  • 不及物动词(Verb-i)
  • 抽象名词(Abstruct)
  • 具象名词(Concrete)
  • 地点状语(Place)

目前只有这些词类,以后可能会有更多。怪奇灵感生成器在产生新词组的时候会按照一定的方式对这几类词中的几类进行排列组合,这种排列组合的方式就叫做「词组模型」。应用内置了许多常见的模型,例如「抽象-具象 词组」和「具象-动作-抽象 词组」等等,默认情况下应用会随机选择一个模型生成词组,当然你也可以在设置中指定一个模型,甚至是自定义词组的排列方式。

贡献词库

如果你觉得这个项目有用,可以考虑提交 Pull Request 丰富现有的词库,修改 /data/words.json 文件即可。

但在你这么做之前,请记住不是任何符合词类的字词都适合放进词库里,例如「台灯」这样过于具体的名词就不适合,因为他不能让人产生更多的联想;而对于「鸟」这个词,在它之前加上各种修饰词,譬如「相思鸟」「天启鸟」「灾厄鸟」,就能够产生新的灵感。在你决定要不要将一个词加入词库时,不妨试试看他能不能与词库中的其他词碰撞产生新的可能。


Copyright © 2022 Eltrac, under MIT License.

bizarre-inspirer's People

Contributors

bigcoke233 avatar lemonprefect 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

Watchers

 avatar

bizarre-inspirer's Issues

点击焦点与空格连续触发问题

现象:当连续点击 想一想 按钮后单击空格会导致两次词语生成。
推测:点击后焦点留在按钮上,按空格可以触发单击和按钮两个事件。
证实:

  1. 点击一次 想一想
  2. 直接按空格键
  3. 点击页面空白处
  4. 按空格键

第二步和第四步响应不同,同时焦点位置也不同。
Q.E.D

修正建议:在监听到键盘按键后判断焦点是否在按钮上,如果在则直接取消事件传播。如果不在则调用一次生成函数。

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.