20 Star 164 Fork 26

qiqi / orange

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 3.62 KB
一键复制 编辑 原始数据 按行查看 历史
qiqi 提交于 2023-09-14 20:33 . 文档描述更新

Orange 开发框架是一款 Golang 语言 web 开发框架

主要特性

  • 基于 golang 性能不凡;
  • MVC 分层设计,逻辑清晰;
  • 核心功能短小精悍,灵活度高;
  • 支持 GRPC 调用,实现微服务利器;
  • 丰富的工具包,有 图片验证码,本地缓存,发送邮件,http请求客户端,日志 等常用工具包;
  • 持续更新,框架应用再多个线上成熟项目,为了解决各类业务问题,框架持续更新;
  • 源码地址 https://gitee.com/zhucheer/orange
  • 文档地址 https://www.kancloud.cn/chase688/orange_framework

快速开始

单文件方式

单文件版本可以快速启动 Orange 框架构建一个简单的 http 服务;

第一步:在 GOPATH 目录下创建一个目录 demo,并在目录中创建一个 main.go; 写入代码:

package main

import "gitee.com/zhucheer/orange/app"

func main(){
   router := &Route{}
   app.AppStart(router)
}

type Route struct {
}

func (s *Route) ServeMux() {
   app.NewRouter("/").GET("/", func(ctx *app.Context) error {
      return ctx.ToString("Hello world!")
   })
}

func (s *Route) Register() {
}

第二步:安装依赖 如果 go 版本小于 1.13

window 下在 cmd 中执行:
set GO111MODULE=on
set  GOPROXY=https://goproxy.cn

linux  下执行:
export GO111MODULE=on
export GOPROXY=https://goproxy.cn

如果 go 版本大于等于 1.13

go env -w GOPROXY=https://goproxy.cn,direct

然后在项目目录下面执行命令

>  go mod init // 初始化go mod 包管理
>  go mod tidy // 加载依赖包
>  go mod vendor // 将依赖包拷贝到项目目录中去
>  go run main.go

以该方式启动仅作为演示或调试时使用,如果需要利用 Orange 构建一个 Web 服务产品,还请使用脚手架方式构建项目;


脚手架方式

通过脚手架方式安装 Orange 可以生成一个完整的 mvc 目录结构,通过该方式可以构建一个完整的 http 服务项目。

安装

下载项目 :go get gitee.com/zhucheer/orange

创建一个新项目

>  orange create project // 命令执行后将会在GOPATH/src目录下生成项目

如果出现 orange 命令不存报错在则需要将 GOBIN 添加到环境变量。

启动项目

  • 通过 go mod 管理相关依赖, 如果 go 版本小于 1.12 需要手动开启 go mod 功能;
window 下在 cmd 中执行:set GO111MODULE=on
linux  下执行:export GO111MODULE=on
  • go1.13版本环境通过配置env开启 go mod ,还需要添加代理配置;
//开启go mod
go env -w GO111MODULE="on"
// 添加国内代理
go env -w GOPROXY=https://goproxy.cn,direct
  • 进入项目目录后依次执行下面的命令
>  go mod init // 初始化go mod 包管理
>  go mod tidy // 加载依赖包
>  go mod vendor // 将依赖包拷贝到项目目录中去
>  go run main.go [--config=config/config.toml] //启动项目 默认配置参数可以忽略,如配置文件位置改变可通过参数指定。

打包项目

> 配置好GOBIN环境变量,进入项目目录,然后执行如下命令:
> window: `orange.exe build`
> linux:`orange build`
> 打包命令默认会将程序打包到 build 目录下,打包好的程序可以直接运行,不依赖 golang 环境。

互动交流

使用帮助群:670633692

鸣谢

Thanks for Jetbrains great support

Jetbrains

Go
1
https://gitee.com/zhucheer/orange.git
git@gitee.com:zhucheer/orange.git
zhucheer
orange
orange
master

搜索帮助