我的开源项目与开源经历分享 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
nihaojob
V2EX    程序员

我的开源项目与开源经历分享

  •  10
    nbsp;
  •   nihaojob 2023-04-22 17:04:21 +08:00 8260 次点击
    这是一个创建于 964 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大家好,我是一位 93 年的前端开发者,最近开源了一款基于 Fabric.js + Vue3 开发的 Web 图形编辑器,它是一个可以自定义设计模板、设计素材,让开发者快捷的开发出一个图片编辑应用,类似稿定设计、创客贴设计这样的工具。

    这篇笔记的两个目的:

    1. 介绍开源项目,如果有类似场景大家可直接使用,不再重复开发。
    2. 分享开源经历,鼓励和邀请对开源感兴趣的伙伴一起参与进来。

    项目介绍

    screenshot-20230415-142257.png

    Github:https://github.com/nihaojob/vue-fabric-editor

    预览:https://nihaojob.github.io/vue-fabric-editor/

    技术选型:

    项目以 Fabric.js 为底层,使用 Vue3 框架和精致的 View UI Plus 组件库构建。 Fabric.js 是业界知名的 Canvas 工具库,它已经 12 岁了,在业界得到了广泛的应用和认可; Vue 提供更友好的入门曲线,尤其在国内应用更广;希望借助这些优秀的开源项目,构建底层强大、上手容易、便捷扩展、开箱即用的开源图像编辑器产品

    应用场景

    它适用于海报设计、封面设计、T 恤设计、奖状 /工卡设计、电子价签设计、印章设计、手机壁纸、PPT 设计等场景,还有更复杂的工业软件场景,如机房拓扑拓展、设备巡检图等。 image.png image.png

    产品特点

    开源前做了一些调研,已经有一些比较专业的开源编辑器项目,比如知名的 SVGEdit 项目,它们很强大,类似在线版本的 PS ,提供给更专业的设计师使用;vue-fabric-editor 的产品定位是给非专业设计人员使用,例如让没有设计技能的运营同学在模板上简单修改,生成一张在公众号中使用的头图。 image.png

    支持功能

    1. 支持导入导出 JSON 源文件,导出常见的图片 PNG 、SVG 格式。
    2. 可自定义设计模板、字体样式模板、自定义分类素材。
    3. 元素支持拖拽、组合、层级管理、多种对齐操作。
    4. 图片素材支持插入、替换、滤镜、裁剪。
    5. 支持形状素材、线条绘制,渐变、边框、透明度、阴影设置。
    6. 画布可自定义尺寸、放大缩小、辅助线、标尺功能。
    7. 快捷键、右键菜单快捷操作设置。

    20230422131548_rec_.gif

    以上就是项目的介绍了,总结一下,它是一个基于 Fabric + Vue3 开发的一款开源 Web 图片编辑器,二次开发简单、扩展便捷、可帮助开发者快速构建一个面向非专业设计人员的图形编辑器

    开源经历

    关于我

    我曾就职于优信二手车,参与过低代码平台的开发,现在一家互联网保险公司工作,参与音视频营销工具、外呼系统的开发,都属于复杂度比较高的前端项目,一直对架构和开源比较感兴趣,也在学习和积累设计模式、架构设计、开源相关的经验。 image.png 作为一位已经 30 岁的开发者,一直对开源有着强烈的兴趣,但是从未参与过,于是在好奇心的驱动下发起了这个开源项目。

    项目经历

    最初,我帮朋友实现了一个基于 Fabric.js 开发的图片生成工具,后面将核心功能抽离并开源到了 Github 上,投稿到了阮一峰老师的博客,获得了一些关注。

    Fabric.js 的底层能力非常强大,接口也很灵活,我最初以为只需要简单的 API 调用就可以实现一个图片编辑器,事实上我高估了自己的学习能力,也低估了 Fabric.js 的强大和灵活。

    很多开发者反馈 Fabric.js 的文档不太友好,太过强大和灵活也有一个弊端,那就是细节太多,要实现一个基础功能完整、功能丰富的图编辑器应用并不轻松,要掌握很多的细节,做很多基础的封装工作

    我将开发过程发布到了技术社区,结识了很多 Fabric.js 的开发者。

    1. 《使用 fabric.js 快速开发一个图片编辑器》
    2. 《 fabric.js 开发图片编辑器的细节实现》
    3. 《 fabric.js 开发图片编辑器可以实现哪些功能?》

    短短几个月的时间,项目在 Github 上已经从 0 涨到 1K+ Star ,开源给我带来了新奇的体验。 image.png

    沉淀

    在和众多的开发者交流后,发现大家都在做同一件事情,重复的开发;大家更期望在不做太多基础工作的情况下,快速构建一个功能完整、易于扩展的图片编辑应用

    目前的项目还只是一个前端应用项目,希望未来和社区一起沉淀一个介于 Web 图片编辑器应用与 Fabric.js 底层库之间的封装层,面向应用开发者设计,提供更简单的接口,让开发者可以通过开源 SDK ,快速构建图片编辑器应用image.png

    邀请

    开源是很有魅力一件事情,我在 Github 上结识了很多志同道合的贡献者,他们是一个个富有热情且有执行力的有趣灵魂,是他们在深夜付出自己的时间与热爱为项目贡献代码,让不相识的后来人受益,让项目越来越好,我也从一个开源门外汉,和大家一起成为了开源贡献者image.png image.png

    这是一个很新的项目和社区,有太多的工作需要做,如果你对这件事情感兴趣,真诚的邀请你加入,希望我们一起边走边学,在未来一起成为开源世界里的一部分,期待你的加入。

    29 条回复    2025-02-12 02:03:44 +08:00
    aulayli
        1
    aulayli  
       2023-04-22 19:11:05 +08:00
    很棒的项目,已 Star
    veike
        2
    veike  
      2023-04-22 20:04:07 +08:00
    已 star ,上次有个说自己是前端菜鸟的写的一个 html 编辑器开源项目,忘了地址了,有老哥记得告诉我一下。
    star7th
        3
    star7th  
       2023-04-22 20:06:52 +08:00   1
    这篇文章写得好,把产品的来龙去脉都介绍得很清晰。虽然我目前用不上这类工具,但点个赞。

    你考虑下要不要参考我的开源项目的模式,https://github.com/star7th/showdoc 开源跟 sass 服务 https://www.showdoc.com.cn 并行,这样可以一边做开源项目一边商业化,不然一直为爱发电,可能不好持续下去。相当多的开源项目都是死于付出和回报不成正比。假如走通商业化,反而走得更远。

    比如说,你提供的 saas 服务可以多点模板,甚至可以引入 AI 来布局,等等。目前我觉得模板偏少,而需要这类工具的目标用户,往往比较需要现成的模板。
    EyreFree
        4
    EyreFree  
       2023-04-22 20:09:58 +08:00
    Dlin
        5
    Dlin  
       2023-04-22 20:47:37 +08:00
    好东西加个 star
    nihaojob
        6
    nihaojob  
    OP
       2023-04-22 21:00:48 +08:00
    @aulayli 感谢,感兴趣可以一起维护哈
    nihaojob
        7
    nihaojob  
    OP
       2023-04-22 21:01:16 +08:00
    @veike 这个不太清楚了
    nihaojob
        8
    nihaojob  
    OP
       2023-04-22 21:01:33 +08:00
    @EyreFree 感谢
    nihaojob
        9
    nihaojob  
    OP
       2023-04-22 21:02:58 +08:00
    @star7th 感谢认可,看到你的开源项目很厉害,是有探索商业化的想法,应用型的开项目会有一些机会,想加老哥咨询请教,不知道方便吗?
    star7th
        10
    star7th  
       2023-04-22 21:54:56 +08:00
    @nihaojob 咱就萍水相逢好了。主要是我也不想手把手教人啊。如果你找得到一些对双方都有利的共赢方式,而不是单方面让我付出时间精力,就联系我邮箱吧。在 github 主页能找到我邮箱。
    ShareManT
        11
    ShareManT  
       2023-04-22 22:30:02 +08:00
    很棒
    nihaojob
        12
    nihaojob  
    OP
       2023-04-22 23:38:09 +08:00
    @ShareManT 谢谢认可
    nihaojob
        13
    nihaojob  
    OP
       2023-04-22 23:38:41 +08:00
    @star7th 感谢,努力向大佬看齐
    bojue
        14
    bojue  
       2023-04-23 01:30:28 +08:00
    @nihaojob 其实开源+商业化可以参考 dooring 这款挺成功的产品,完全商业话可以参考:创客贴,canva ,稿定设计,客户确实比较看中模板库
    nihaojob
        15
    nihaojob  
    OP
       2023-04-23 08:11:36 +08:00 via Android
    @bojue 我之前也关注到了徐小夕大佬的 dooring ,目前项目还比较初期,在考虑这个事情了,感谢提醒
    opentrade
        16
    opentrade  
       2023-04-23 09:09:04 +08:00 via Android
    @star7th 开源做久了,都这种态度
    coldmonkeybit
        17
    coldmonkeybit  
       2023-04-23 09:26:04 +08:00
    支持支持已 star ,上个月用 fabric 做需求,还参考过 OP 的项目,太巧啦
    sunny7
        18
    sunny7  
       2023-04-23 10:40:24 +08:00
    已 star,大佬,我是一名有两年正式开发经验的前端开发,对这个项目很感兴趣,请问可以怎么加入这个开源项目
    onetown
        19
    onetown  
       2023-04-23 10:41:30 +08:00   1
    已 star
    seanlin5
        20
    seanlin5  
       2023-04-23 11:23:57 +08:00
    已 star
    nihaojob
        21
    nihaojob  
    OP
       2023-04-23 11:34:40 +08:00 via Android
    @sunny7 太好了 欢迎你加入,可以看下 github 上 reademe 的贡献指南,有我的微信
    nihaojob
        22
    nihaojob  
    OP
       2023-04-23 11:34:56 +08:00 via Android
    @coldmonkeybit 缘分 哈哈
    aegon466
        23
    aegon466  
       2023-04-23 17:57:42 +08:00
    可以支持 3d 吗
    nihaojob
        24
    nihaojob  
    OP
       2023-04-23 23:22:36 +08:00 via Android
    @aegon466 不支持 3D
    encro
        25
    encro  
       2023-04-24 09:44:42 +08:00
    @star7th

    @nihaojob

    一看也立马想到了引入服务器端模板和创作会怎么样。创客贴这类用户还挺多的,也很有用。
    nihaojob
        26
    nihaojob  
    OP
       2023-04-24 22:14:03 +08:00
    @encro 是的哈 素材 保存 等 其实开发一个编辑器需要做的功能还蛮多的
    VikiQAQ
        27
    VikiQAQ  
       2023-05-05 16:46:17 +08:00
    感谢每一位开源贡献者。
    qalong
        28
    qalong  
       2023-05-11 21:19:26 +08:00
    用过,很不错!特意表示感谢!
    yilon
        29
    yilon  
       302 天前
    看到了!很不错!已 star ,特别再过来表示感谢!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3161 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 11:38 PVG 19:38 LAX 03:38 JFK 06:38
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86