-
Notifications
You must be signed in to change notification settings - Fork 75
社区介绍
WeCross是完全开源的区块链跨链协作平台,致力于跨行业、机构和地域的跨区块链信任传递以及商业合作,实现同\异构区块链系统之间安全可信地互操作,目前已支持FISCO BCOS、Hyperledger Fabric等主流开源区块链。
WeCross主要包含四个核心功能模块,分别是通用区块链接口(UBI)、异构链互联协议(HIP)、可信事务机制(TTM)和多边跨域互联(MIG)。更多信息请参阅白皮书。
当然,“百闻不如一见,百见不如一干”!最高效的熟悉WeCross的方式还是使用它,在具体场景中摸清相关模块的门路。体验和使用教程可参照技术文档。
社区是促进WeCross稳步发展的关键支撑,是推进WeCross研发进程的中坚力量,也是汇聚了所有开发者集体智慧的大本营。WeCross的开发、维护、运营都由社区协作完成。
社区资源来自开发者,用于开发者,如果你遇到问题,这些资源可以带你快速找到答案。社区也欢迎你在解决问题之后,将经验化成资源回馈社区,以飨更多开发者。
- 交流群:如在实操方面遇到阻碍或想和开发者们随时随地交流,那么加群、加群、加群,群里的“老司机”很乐意为你提供解答和支持。
- 公众号:及时掌握项目动态、了解版本更新信息、阅读来自社区的精彩文章,以及查阅近期活动安排。
- 社区活动:社区不定期举办各类型交流活动,你可以来Meetup上和社区开发者深度讨论技术,极速提高技术能力;可以花36小时在Hackathon赛场上和开发者们进行代码的创意角逐,收获一份“秃然”的革命友谊;可以参加WeCross社区例会,为开发进程建言献策,并找到合适的切入点,一起参与WeCross项目的建设。
- CC-SIG:跨链兴趣小组(Cross-Chain Special Interest Group),是一个围绕WeCross的跨链爱好者聚集地,其中不乏跨链meetup分享,前沿技术探索,跨链项目开发落地等内容。欢迎添加小助手了了解加入方式。
- 报告错误和功能请求:如你发现错误、发现不合理的地方需要优化,或想提出功能请求,可以提交Issue,如果是小问题修复,欢迎顺手提个PR。
- 领取可以完成的任务:社区在Issue中提供了一些容易上手的任务,标记为
help wanted
标签,你可以从中领取合适的任务,尝试完成开发,并按照指引提交代码。 - 提交改进提案CIP:如果社区的任务你已经游刃有余,那么做点有挑战的事吧!你可以从WeCross设计的层面提出思考,然后在Issue中提一个改进提案CIP,和社区开发者分享、讨论你的提案,并在社区统一共识后,一起完成开发。
- 分享开发心得:他山之石可以攻玉,经过充分沉淀的你可以写文章,分享任何你觉得有助于其他开发者的经验和知识,文章会署名发表在微众银行区块链公众号。
- 加入CC-SIG:加入圈子,在提问中获取帮助,在讨论中提升自己,在思维碰撞中让自己的项目更强,在开发者的帮助下让自己的工作更完美,在meetup分享时实现个人信仰。
每一次陪伴都值得感激。社区感谢每一位见证WeCross成长的开发者和用户,并为每一个贡献者提供专属的纪念品(神秘.JPG)。同时,参与社区活动也有机会获得礼品等福利。
每一份付出都值得铭记。社区公开维护一个贡献榜记录曾参与和帮助WeCross建设的社区贡献者。榜单见证了每一位贡献者成长的轨迹,也留下了WeCross不断迭代发展的烙印。
每一个约定都值得坚守。为了让用户的诉求得到清晰而充分地表达,为了让开发者更高效便捷地参与WeCross建设,社区协作制定了PR规范,代码规范,测试规范,改进提案(CIP)规范等社区规约,欢迎大家一起遵守和完善。
正如WeCross白皮书所言,“风起于青萍之末,一场围绕区块链技术的变革正在徐徐拉开帷幕。与一个具备无限潜力的趋势共同成长,现在,正是最好的时节”。期待更多开发者和WeCross社区并肩同行!
不积跬步无以至千里,如果你从来没有或者很少参与大型开源项目,或者你是初次接触WeCross,那么阅读WeCross相关资料是最快捷、最高效的入门方式。
- 你可以通过白皮书了解跨链的技术背景以及WeCross的设计理念、系统架构和功能模块;
- 你可以通过技术文档了解每个模块的技术原理以实现方案,并根据教程体验WeCross相关产品;
- 你可以通过公众号了解项目最新进展,社区也将陆续推出每个项目模块的拆解和分析。
当你熟悉WeCross项目之后,不妨按照以下途径开始你的历练之旅:
- 积极帮助社区用户解答技术问题
- 帮助项目增加测试
- 完善技术文档
- 提供有价值的Issue
- 报告或修复BUG
- 为项目撰写源码分析、实用案例相关的文章
当你完成上述某一项的时候,你就成为了一名社区的贡献者,社区会牢记你的付出。期待一路披荆斩棘的你在社区收获知识、经验、成就和友谊。
WeCross社区会根据项目的版本规划和开发计划,解耦出一些独立的小功能点和小模块,然后发布到Issue区,并标注成help wanted
。Issue区的任务都会标明难度等级,这两个标签对应的开发任务都是对新手比较友好的,如果你对某一个模块特别感兴趣也可以选择模块对应的标签。
改进提案CIP任务也是以Issue的形式组织,任务都关联到CIPProposal标签,可以结合自己的兴趣和对源码的理解程度在CIP列表中选择适合自己难度的Issue。
基于WeCross四大核心模块,Issue区的任务难度划分为四个等级:
- L = Low 低难度,只需要了解某个模块一小部分知识并使用较少代码量完成
- M = Medium 中难度,需要了解某个模块多种知识或需要显著代码量完成
- H = High 高难度,需要完全了解某个模块或需要非常多代码量完成
- S = Super High 超高难度,需要结合四个模块,涉及顶层设计、系统编程等综合性知识完成
当选定Issue之后需要根据Issue的类型以及难度进行后续的工作。对于简单的任务可以直接进行开发,对于复杂的任务需确保已完成CIP提案,再进行开发。
部分任务可能涉及外部其他组件的修改,比如 WeCross-Stub、WeCross-SDK或者WeCross-Console。对于这类任务,为了保证整个任务的完整性,需要在对应的项目中提交PR,并完成项目间的集成测试。
为了避免反复的修改和评审,以减少你不必要的工作量,开发过程中建议遵循社区规约中的相关规范。
WeCross主要包含四个核心功能模块,分别是通用区块链接口(UBI)、异构链互联协议(HIP)、可信事务机制(TTM)和多边跨域互联(MIG),并配备了丰富的开发运维工具,包括SDK,控制台,网页管理台等。你可以根据自己的兴趣爱好去了解某一个具体的模块,然后寻找切入点,参与该模块的开发和维护。
通用区块链接口聚焦于不同区块链平台如FISCO BCOS、Hyperledger Fabric的适配和接入,使WeCross能正常地连接和调用这些区块链,并发送跨链交易。
模块功能范围:
- Stub:多种区块链的抽象接口类
- FISCO BCOS Stub:FISCO BCOS区块链的适配器
- Hyperledger Fabric Stub:Hyperledger Fabric区块链的适配器
异构链互联协议聚焦WeCross跨链路由间的互联,区块链信息的同步,交易和区块链调用的转发
模块功能范围:
- P2P:网络模块,负责处理跨链路由间的互联和信息同步
- RPC:用户接口模块,负责处理来自HTTPS、SDK和控制台的Restful请求
- Remote Stub:远程Stub模块,负责将来自远程的区块链请求转发上链
- Interchain:合约跨链调用模块,负责处理由合约发起的跨链调用
可信事务机制聚焦模块聚焦 WeCross 的跨链事务,包括两阶段提交(2PC)和哈希时间锁合约(HTLC),分别保障普通跨链交易和跨链转账的事务性。
模块功能范围:
多边跨域互联聚焦跨链治理,包括账户生命周期管理、跨链权限控制以及基于中继的跨链互联模型等等。
- AccountManager:跨链账户服务,管理账户的生命周期,每个跨链账户对应多个链账户,实现跨链身份的统一。
面向开发者的跨链工具包,通过Java-SDK可快速调用WeCross提供的跨链服务接口,通过交互式命令控制台和可视化网页管理台实现一站式跨链管理。
- WeCross-Java-SDK:提供跨链资源管理和调用的相关接口
- WeCross-Console:命令行交互式跨链调试工具
- WeCross-WebApp:可视化网页版跨链管理平台