Open huan opened 3 years ago
This is my draft proposal. You can comment to give some suggestions and I will improve it.
@chinggg Welcome, your proposal is good!
Please register yourself with the official system at https://portal.summer-ospp.ac.cn/summer/ now so that we will not miss the deadline.
Here are some more complicated examples (Just FYI):
明天(19日,周六)晚上20点社区召开暑期 2021 kick off 的在线会议,会议地点见 meeting notes。
meeting notes 地址 https://bit.ly/2zpi2XG ,请暑期 2021 的同学们注意参加:注册、添加介绍自己的 agenda 和准备 slides。
日期:2021-07-04
日期:2021-07-04
getElement()
方法才能进行操作contrib.grid({rows: n, cols: m, screen: screen})
划分窗格区域,再 grid.set(x, y, dx, dy, widget)
,好处是可以直观地让各部件按比例占位,但 grid
, screen
和 widgets
之间的嵌套关系不是很直观,grid
的构造函数中有 screen
,grid.set()
又传入 widget
,似乎 grid
才是关键,不知由此应该怎样设计类。如果直接用 screen.append()
是否会更方便。console-tg-client
的操作看不懂
export const updates$ = new ReplaySubject<IUpdateEvent>();
export const error$ = new Subject<any>();
export const render$ = new BehaviorSubject<void>(null);
目前效果如下(透明度是我终端软件自带)
希望架构设计能够得到指点
Thank you very much for the report, your progress is great!
I'd like to schedule a 30 minutes zoom meeting for our project after you have finished the 初期报告. Looking forward to reading your blog post, and discussing it with you!
@huan Thanks! In fact I have tried to run node-facenet
but it always fails when installing, throwing error like Failed at the sharp@0.20.8 install script
in Node 14 and 12. When I switch to Node 8, there is another error Could not find a version that satisfies the requirement tensorflow==1.7 (from versions: 2.5.0rc0, 2.5.0rc1, 2.5.0rc2, 2.5.0rc3, 2.5.0, 2.6.0rc0)
Yes, the node-facenet package has been out of date for a while.
I'd like to suggest that you just read the source code and see if it can inspire you some.
We can add it to our meeting agenda tomorrow.
P.S. Please check in yourself and add the topics to the agenda in our meeting notes
日期:2021-08-22
目前效果如下,明显看出显示有瑕疵,应该与 blessed log 组件的底层实现有关,中文出现叠词,显示过长消息时更容易出现字符残留漂移的现象
Please follow https://github.com/wechaty/summer/issues/79#issuecomment-899086777 and make sure you have:
Pleaset let me know when you have get it done, thank you very much.
Hi @chinggg Please upload the video to bilibili or Tencent as well, Thanks.
ping @chinggg Please upload the video to bilibili or Tencent as well, Thanks.
ping @chinggg for the weekly update.
日期:2021-09-09
Thank you very much for the update!
I'll try to npm install our cli later and to see how good it works.
And, I will really be exciting with the react-blessed if we can integrate our cli with it!
Thank you very much for the update!
I'll try to npm install our cli later and to see how good it works.
And, I will really be exciting with the react-blessed if we can integrate our cli with it!
Have you ever used react-blessed
with typescript(ts-node)? The tutorial uses babel and javascript, I cannot find projects to learn from which combine the two technologies.
TypeScript will be absolutely fine with them.
I'll have a look at that tutorial and to see how can we integrate wechaty cli with react.
After I watched the react-blessed tutorial, I realized that this is for running React for CLI.
You can learn a lot from a great repo blessed contributions, extensions, typings, and documentation created by @cancerberoSgx, with great examples with TypeScript + React + Blessed:
npm run start-gallery
) - https://github.com/cancerberoSgx/accursed/blob/master/spec/blessed/gallery/main.tsxWhat I was talking about before is to run Wechaty CLI in the browser on a webpage.
Here's how to do it, please feel free to check it out:
I have just enhanced the cli with dual-ESM-CJS-module support and fixed some minor bugs.
It seems the CLI works great! Here's how to use it:
npm install --global wechaty-cli
wechaty-cli
However, the user interface and experience need to be improved a lot, could you please make a plan for it?
Thank you very much!
@huan Thanks for improving NPM config and finding the great repo accursed ! Though it provide lots of document and code, I cannot run the demo now and tsc
will emit many errors on the .tsx
files like below.
For the UI/UX improvement, I plan to use menu(with single character as key) for users to select, just as dockly does. It can provide stable user experience on Windows as well, where mouse click does not work.
dockly looks great!
日期:2021-09-17
关于 rightPanel 的内容,我原本想用来显示 个人详情/群聊成员,但前者似乎不适合长条形框体和树形元素结构。故而我考虑将其用作显示活跃聊天(收到消息的聊天)的面板,大部分聊天可能都处于僵尸状态,用户可以通过该面板快速跳转到真正活跃的群聊,征求 @huan 的意见
Thanks for the update.
Have you started writing the mid-term blog post? Please let me know when you can finish it because it is required by our program.
Refer to:
@huan What do you think about this UI?
Looks good!
Do you have a roadmap / plan for publishing this new version? I'd like to try it as soon as possible.
Looks good!
Do you have a roadmap / plan for publishing this new version? I'd like to try it as soon as possible.
Have published v0.2.5
For more complete UI improvement roadmap. see https://github.com/wechaty/cli/issues/17
The final report is in wechaty/wechaty.js.org#1322 Because I have been busy in hometown since 9/30, I have not completed the videos now, but it should be down before the meeting at 10/9.
@chinggg You should make GitHub Action green in wechaty/wechaty.js.org#1322 as soon as possible.
As the Wechaty community requested, you should finish the blog before the meeting. Finish the blog means your PR is merged instead of just create a PR.
希望同学未来可以不但继续自己参与维护社区代码,还可以多带动身边的同学参加,在开源项目中发挥更加积极的作用。
开源软件供应链点亮计划
“开源软件供应链点亮计划-暑期2021”(以下简称 暑期2021)是由中科院软件所与 openEuler 社区共同举办的一项面向高校学生的暑期活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进国内优秀开源软件社区的蓬勃发展。
根据项目的难易程度和完成情况,参与者还可获取“开源软件供应链点亮计划-暑期2021”活动奖金和奖杯。
官网:https://summer.iscas.ac.cn
Wechaty
Wechaty 是一个开源聊天机器人框架SDK,具有高度封装、高可用的特性,支持NodeJs, Python, Go 和Java 等多语言版本。在过去的5年中,服务了数万名开发者,收获了 Github 的 9600 Star。同时配置了完整的DevOps体系并持续按照Apache 的方式管理技术社区。
Wechaty 官网暑期2021项目入口:https://wechaty.js.org/docs/ospp/2021/
项目名称
基于 Blessed 的 Wechaty 命令行文本客户端软件(防IRC)
Wishlist: https://github.com/wechaty/wishlist/issues/47
背景介绍
Wechaty 社区目前已经支持微信、Whatsapp、企业微信、飞书等常见流行即时通讯工具,并且能够通过多语言 SDK (比如 Python Wechaty) 进行调用。
Blessed 是一个 curses-like library with a high-level terminal interface API for node.js. 基于 Blessed 能够快速的完成命令行文本节目的开发:
通过 blessed-contrib 可以快速的 Build dashboards (or any other application) using ASCII/ANSI art and javascript, 达到 Friendly to terminals, ssh, and developers. Extends blessed with custom drawille and other widgets 的使用效果。
我们在本次 Summer 2021 的项目中,Wechaty 希望可以实现对一个基于 Blessed 的 CLI 命令行文本客户端,通过 Wechaty 的基础支持,实现一个能够作为 WeChat, WeCom, Lark, Whatsapp 等所有 Wechaty 支持的 IM 的命令行文本客户端。
客户端的界面设计和交互,可以仿照 Linux 命令行的 IRC 客户端:
我们 Wechaty 社区已经有了一些基于 Blessed 的项目和代码,可以参考: Wechaty Twins Bot
需求介绍
仿照 Linux 命令行终端的 IRC 文本客户端,实现一个基于 Wechaty 的即时通讯工具客户端,通过 Wechaty 支持所有现有的 Wechaty Puppet Providers,比如微信、企业微信、飞书、Whatsapp等。
在初期开发中,能够实现文本消息的接收和发送,即可完成原型验证 POC 。
项目难度
中(奖金:9,000元)
导师联系方式
李卓桓:Creator of Wechaty, Tencent TVP of Chatbot (huan@chatie.io)
项目产出目标
wechaty-cli
项目技术栈
参考链接