All Projects → ixre → Go2o

ixre / Go2o

Licence: gpl-2.0
基于DDD的o2o的业务模型及基础, 使用Golang+gRPC/Thrift实现

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Go2o

Software Engineer Interview Questions
A lot of questions and links to prepare yourself for an interview.
Stars: ✭ 176 (-74.86%)
Mutual labels:  ddd, oop
Dev Stuff
😎 Programming stuff for everyone. Collection of articles, videos about architecture, Domain Driven Design, microservices, testing etc.
Stars: ✭ 105 (-85%)
Mutual labels:  ddd, oop
awesome-software-architecture
A curated list of awesome articles, videos, and other resources to learn and practice software architecture, patterns, and principles.
Stars: ✭ 1,594 (+127.71%)
Mutual labels:  ddd, oop
Interviews
A list of fancy questions I've been asked during the interviews I had. Some of them I ask when interviewing people.
Stars: ✭ 140 (-80%)
Mutual labels:  ddd, oop
ddd-example-ecommerce
Domain-driven design example in Java with Spring framework
Stars: ✭ 73 (-89.57%)
Mutual labels:  ddd, oop
Equinoxproject
Full ASP.NET Core 5 application with DDD, CQRS and Event Sourcing concepts
Stars: ✭ 5,120 (+631.43%)
Mutual labels:  ddd
Bash Oo Framework
Bash Infinity is a modern standard library / framework / boilerplate for Bash
Stars: ✭ 5,247 (+649.57%)
Mutual labels:  oop
Event Store
PHP 7.4 EventStore Implementation
Stars: ✭ 505 (-27.86%)
Mutual labels:  ddd
Kledex
.NET Standard framework to create simple and clean design. Advanced features for DDD, CQRS and Event Sourcing.
Stars: ✭ 502 (-28.29%)
Mutual labels:  ddd
Ddd Forum
Hacker news-inspired forum app built with TypeScript & DDD from solidbook.io.
Stars: ✭ 674 (-3.71%)
Mutual labels:  ddd
Shriek Fx
An easy-to-use rapid development framework developed on the basis of.NET Core 2.0, following the constraints of domain Driven Design (DDD) specifications, combined with the CQRS architecture to provide the infrastructure for event-driven, event backtracking, responsiveness, and more. Let developers enjoy the true meaning of object-oriented design patterns brought by the aesthetic.
Stars: ✭ 644 (-8%)
Mutual labels:  ddd
Java design patterns
Java 实现的面向对象设计模式示例, 创建者、抽象工厂、工厂方法、原型、单例、适配器、桥接、组合、装饰器、备忘录、观察者、状态、策略、模板方法、访问者
Stars: ✭ 547 (-21.86%)
Mutual labels:  oop
Modular Monolith With Ddd
Full Modular Monolith application with Domain-Driven Design approach.
Stars: ✭ 6,210 (+787.14%)
Mutual labels:  ddd
Isis
Apache Isis™ software is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services or view models, and the framework dynamically generates a representation of that domain model as a webapp or as a RESTful API. For prototyping or production.
Stars: ✭ 605 (-13.57%)
Mutual labels:  ddd
Christddd
🙌 ASP.NET Core 3.1 应用, 包含 DDD、CQRS、EDA 和ES事件回溯
Stars: ✭ 510 (-27.14%)
Mutual labels:  ddd
Komga
Media server for comics/mangas/BDs with API and OPDS support
Stars: ✭ 647 (-7.57%)
Mutual labels:  ddd
Dynamix
🍥 A new take on polymorphism in C++
Stars: ✭ 504 (-28%)
Mutual labels:  oop
Spring Data Commons
Spring Data Commons. Interfaces and code shared between the various datastore specific implementations.
Stars: ✭ 542 (-22.57%)
Mutual labels:  ddd
Dotplant2
E-Commerce CMS - Yii Framework 2 (yii2, shop)
Stars: ✭ 636 (-9.14%)
Mutual labels:  e-commerce
Spring Data R2dbc
Provide support to increase developer productivity in Java when using Reactive Relational Database Connectivity. Uses familiar Spring concepts such as a DatabaseClient for core API usage and lightweight repository style data access.
Stars: ✭ 534 (-23.71%)
Mutual labels:  ddd

Go2o

Build Status

What's Go2o?

Go2o is Google Go language binding domain-driven design (DDD) O2O open source implementation. Support Online Store , Offline stores; multi-channel (businesses), multi-store, merchandise, snapshots, orders, sales, payment, distribution and other functions.

Project by a management center (including platform management center, business background, store background), online store (PC shop, Handheld shops, micro-channel), the member center, open API in four parts.

Go2o using domain-driven design for business depth abstract, theoretical support in most sectors O2O scenarios. Through open API, you can seamlessly integrate into legacy systems.

Go2o 介绍

Go2o是使用Golang语言结合领域驱动设计(DDD)的O2O实现。支持线上商店,线下门店;多渠道

(商户)、多门店、商品、规格SKU、快照、订单、促销、支付、配送等功能。

项目由管理中心(包括平台管理中心、商户后台、门店后台)、线上商店(PC商店、手持设备商店、微信)、

会员中心和通行证、服务四部分组成。

Go2o使用领域驱动设计对业务深度抽象,支持常见的O2O应用场景。通过Socket服务,可以开发安卓和IOS,

使用Rpc服务可以扩展子系统。

Go2o

更多系统截图见:#snapshot#目录

项目说明

__最后提交时间: 2016-12-20 __

代码已重构完毕,见develop分支, 新的代码库不在包含UI, UI见分支v0.1.1


贡献代码请看: todo list | bug list

请支持开源,不做伸手党,不拿来主意!

========================================

感谢以下哥们和匿名捐助的朋友:

巍 zhu**@126.com 职业码农 奋斗富三代

QQ群:338164725

**特别感谢: 领域驱动设计的专家-(腾讯)王立老师,我的良师益友;没有他,就没有这个项目!

MAC下运行请先设置最大连接数:

sudo sysctl -w kern.ipc.somaxconn=4096

Deploy by docker-compose

docker-compose.yaml

Deploy

1. Import database

Create new mysql db instance named "go2o" and import data use mysql utility. Database backup file is here : go2o.sql

2.Complied

git clone https://github.com/ixre/go2o.git /home/usr/go/src/go2o
export GOPATH=$GOPATH:/home/usr/go/
cd /home/usr/go/src/go2o
go build go2o-serve.go
go build go2o-daemon.go
go build go2o-tcpserve.go

2.Running Service

Usage of ./go2o-serve:
     -conf string
             (default "app.conf")
       -d	
            run daemon
       -r   
            run rpc server
       -debug
            enable debug
       -trace
            enable trace
       -help
            command usage
       -port int
            web server port (default 14190)
       -restport int
            rest api port (default 1419)

Usage of ./go2o-daemon:
    -debug = false : enable debug

Usage of ./go2o-tcpserve:
  -conf string
         (default "app.conf")
  -l	log output
  -port int
         (default 14197)

3.Add http proxy pass for nginx

server {
        listen          80;
        server_name     static.ts.com;
        root    /home/usr/go/src/go2o/static;
    location ~* \.(eot|ttf|woff|woff2|svg)$ {
            add_header Access-Control-Allow-Origin *;
    }
}

server {
        listen          80;
        server_name     img.ts.com;
        root            /home/usr/go/src/go2o/uploads;
    location ~* \.(eot|ttf|woff|woff2|svg)$ {
            add_header Access-Control-Allow-Origin *;
    }
}

server {
        listen          80;
        server_name     *.ts.com;
        client_max_body_size    10m;  
        location / {
                proxy_pass   http://localhost:14190;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $host;
                proxy_redirect   off;
        }
}

4.Add test hosts

echo 127.0.0.1 go2o.ts.com static.ts.com img.ts.com mch.ts.com hapi.ts.com u.ts.com mu.ts.com passport.ts.com mpp.ts.com master.ts.com zy.ts.com whs.ts.com >> /etc/hosts

Access Entry

WebMaster

master.ts.com

account: go2o / 123456

Merchant Management

mch.ts.com

account: go2o / 123456

Member Center

u.ts.com

Merchant Sales

go2o.ts.com

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].