开源项目Ktwgit-目标基于Kotlin的Gitbucket


#1

注: 因人气不旺,编辑重发。

技术栈

准备上Kotlin全家桶,如:

  • Ktor
  • Kotlinx.html
  • Kotlinx.serialization
  • Jgit
  • PostgreSQL
  • Exposed or Ktorm
  • Keycloak

背景说明

Gitbucket 是基于 Scala 的 简化版 Github, 我在日常办公(非源代码管理)中大量应用,希望未来可以订制符合自身业务需求的协作平台。

因 Gitbucket 项目开源,已经实现的功能容易了解,减少沟通确认成本

采用 Kotlin 除了出于个人喜好外,还有持续改进的需求,希望 Kotlin 的生态链利于后续开发。

希望有兴趣有时间的人共同参与,Gitbucket 只一个日本人作为开发主力,已有数千star了。

实现方法

  • 项目可托管在 Github上 Ktwgit
  • 共同讨论确定开发任务,合理分工
  • 无时间写代码的大佬,也希望可给予指导

预算与收益

  • 我不懂技术,并不确切开发成本如何。粗估开发费用 RMB5万-8万元,作为实际开发人员的酬金。如果不足,再讨论追加
  • 酬金依里程碑兑现,里程碑可讨论确定。先议价后开发,免得期望落空
  • 项目管理我也不在行,承担这部分工作的人也可收取酬金,希望有经验人士支援
  • 验收与兑现公开进行,如有争议,希望本论坛的大佬组成专家组裁决,我接受并执行专家组意见

最终成果

  • 一个看起来不逊于Gitbucket的Git 协作平台
  • 开源项目,BSD许可,希望开发成果对更多人有用
  • 我会另出资金进行后续订制,订制成果非开源

谢谢。


#2

ORM 推荐用 Ktorm,文档比 Exposed 齐全多了,上手使用也简单 https://ktorm.liuwj.me/zh-cn/


#3

谢谢快速回复,刚刚看了下文档,感觉不错 :+1::+1::+1:

引用
Exposed 存在的主要问题列一下:

  • 所有操作都必须放在 transaction { } 块中,即使是纯查询操作也要开启事务
  • 不支持 Java 8 日期时间 API
  • 实体类不支持序列化
  • 难以扩展,比如增加自定义的数据类型、运算符或 SQL 函数
  • 文档太烂,连官方的英文文档都不齐全,中文文档更是完全没有

正是这些问题的存在,才促使我开发了 Ktorm 框架。因此,如果你同时深入使用过 Ktorm 和 Exposed,你就会发现,Ktorm 的许多设计,都恰好戳到了 Exposed 的痛点。

当然,我也不敢说 Ktorm 一定就比 Exposed 好用,毕竟 Exposed 是 JetBrains 的团队在开发,而 Ktorm 暂时只是我的个人作品。我只想说,如果你正在使用 Exposed,并且恰好困扰于上面的某个问题,那么 Ktorm 可能会更适合你。

作者提供收费支持服务吗?有的话就上 :grinning:


#4

我就是作者,使用有问题的话欢迎到论坛提问或在 GitHub 上提 issue,我经常都在线的 :grinning:


#5

@vincentlauvlwj @hltj @bennyhuo ……

论坛大佬们支持下本项目 :pray: :pray: :pray:


京ICP备16022265号-2 Kotlin China 2017 - 2018