zeromall
zeromall copied to clipboard
research: some open source e-commerce platforms
一些开源电商平台调研:
目标:
- [x] 尝试基于
go-zero用生产级别的微服务的最佳实践方式写一套电商平台.
Why?
- 既然有那么多电商系统, 为什么还要再写一遍?
- 原因:
- [x] 这些大都是单体项目, 非
微服务. - [x] 这些大都是 demo 级别(超小企业架构), 非
规模以上企业(有志于成为这类)的架构实践. - [x] 方向从一开始就错的, 无法从小做到大.
- [x] 不是用
go-zero写的. 学习一门新技术, 最好的方式, 就是用他写一个产品.
- [x] 这些大都是单体项目, 非
重点参考项目:
- 这个项目, 覆盖后端/admin/app, 完成度很高. 且文档非常详细.
mall:
server:
- [x] https://github.com/macrozheng/mall
- http://www.macrozheng.com/#/README
- 文档非常详细, 有数据库完整设计介绍.
- ⭐⭐⭐⭐⭐
admin:
- https://github.com/macrozheng/mall-admin-web
app:
- http://www.macrozheng.com/app/mainpage.html
Java:
- [x] https://github.com/YunaiV/onemall
- 看起来是基于微服务的.
- ⭐⭐⭐
- [x] https://github.com/Exrick/xmall
- ⭐⭐⭐
- [x] https://github.com/shopizer-ecommerce/shopizer
Golang:
- [x] https://github.com/qor/qor
- ⭐⭐
- go 最早的电商系统, 代码质量还算 ok, 不过偏美式电商风格. 不太符合国内习惯.
- 官方有个 example demo, 不过不太算微服务典范.
- https://getqor.com/cn
- [x] https://github.com/netlify/gocommerce
PHP:
laravel:
- [x] https://github.com/summerblue/laravel-shop
- [x] https://github.com/buqiu/laravel-shop
ThinkPHP:
- [x] https://github.com/gongfuxiang/shopxo
Python:
- [x] https://github.com/odoo/odoo
- ⭐⭐⭐⭐⭐
- 这是个超级项目, 前身是 OPEN-ERP. 对, 是个 ERP 软件. 功能非常庞大.
- 非常老的一个项目, 活到今天, 且是开源社区非常赚钱的项目.
- 源码写的一般, 但是架构拆分不错. python2.5 远古时代, 就开坑的项目. 有很多老代码.
Django:
- [x] https://github.com/shuup/shuup
- [x] https://github.com/awesto/django-shop
- 列出来, 是说明, 没有价值. 💔💔💔
ref:
- https://www.zhihu.com/question/19635311
一些中间件:
TCC 分布式事务:
- https://seata.io/zh-cn/
- https://github.com/seata/seata
- https://github.com/seata/seata-go-server
- https://github.com/transaction-wg/seata-golang
- https://github.com/micro-community/go-tcc
我最近找到一个go语言的商场 https://github.com/i-love-flamingo/flamingo-commerce 还不错
打算春节期间搞起来
加一个 JS 的实现.
做一个odoo 的golang实现版
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
Make a golang implementation of odoo
做一个odoo 的golang实现版
- 你指的是是 python 的 OpenERP 吧? 这个项目太庞大了, 写了快20年了吧.
- 应该没有谁有能力再重写 odoo, 比较而言, ERP 类的项目, 很多都是脏活, 加上属于内网部署, 不是很在意性能.
- 这种 内网 CMS 类的产品, python 很适合. (开发效率优先)
另外:
- 我5-6年前, 我分析过 odoo 源码. odoo 是自己实现了一套 template 引擎(项目过早,大量实践非社区主流).
- 功能很强大, 但是, 实现上, 很多设计范式, 都比较老旧.
- 改造成 go 微服务, 复杂度比较高. 换成 go 收益也不大.
- 更合适的思路是使用 python + grpc 来重写, 一点点替换.
- 譬如使用 360 团队开源的 bali python gRPC 框架.
@gleke
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
Make a golang implementation of odoo
- You mean OpenERP in python, right? This project is too huge, and it has been written for almost 20 years.
- No one should be able to rewrite odoo. In comparison, many ERP projects are dirty work, and they belong to intranet deployment, so they don't care much about performance.
- For this intranet CMS product, python is very suitable. (Development efficiency is preferred)
In addition:
- I analyzed the source code of odoo 5-6 years ago. Odoo implemented a template engine by itself (the project is too early, and a lot of practice is not mainstream in the community).
- The function is very powerful, but in terms of implementation, many design paradigms are relatively old.
- Transformed into go microservices, the complexity is relatively high. The benefits of switching to go are not great.
- A more appropriate idea is to use python + grpc to rewrite and replace a little bit.
- For example, use the bali python gRPC framework open sourced by the 360 team.
odoo社区现在发展比较好,业务流程比较成熟,我的想法是用gozero来实现ODOO的模块,数据库结构用ODOO的,国外有人用golang来完全实现ODOO,不过现在已经停止了,不过值得借鉴。https://github.com/hexya-erp/hexya
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
The odoo community is developing well now, and the business process is relatively mature. My idea is to use gozero to implement ODOO modules, and use ODOO for the database structure. Some people in foreign countries use golang to fully implement ODOO, but it has stopped now, but it is worth learning. https://github.com/hexya-erp/hexya
你看看这个 https://github.com/go-pay/gopay,集成进mall里如何?
Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
Take a look at this https://github.com/go-pay/gopay, how about integrating it into the mall?
odoo:
- https://github.com/hexya-erp/hexya
- 我抽时间看一些这个 odoo 项目.
- https://github.com/skilld-labs/go-odoo
- https://github.com/odoo/odoo
- https://github.com/frappe/erpnext
payment:
- https://github.com/go-pay/gopay
- 这个可以集成到 app/unit/finance/payment 服务里
- 支付网关服务, 我抽时间会集成一下. 这个比较常用.
- https://github.com/topics/pay
ERP:
- https://github.com/topics/erp
CRM:
- https://github.com/topics/crm