<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: vangogh</title>
    <description>The latest articles on Forem by vangogh (@vangogh).</description>
    <link>https://forem.com/vangogh</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1108573%2Fed416810-bf73-405b-a58c-05e6e7b64eb0.jpeg</url>
      <title>Forem: vangogh</title>
      <link>https://forem.com/vangogh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/vangogh"/>
    <language>en</language>
    <item>
      <title>a framework scaffolding tool for golang</title>
      <dc:creator>vangogh</dc:creator>
      <pubDate>Mon, 26 Jun 2023 10:40:58 +0000</pubDate>
      <link>https://forem.com/vangogh/a-framework-scaffolding-tool-542k</link>
      <guid>https://forem.com/vangogh/a-framework-scaffolding-tool-542k</guid>
      <description>&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://github.com/gly-hub/go-dandelion" rel="noopener noreferrer"&gt;go-dandelion&lt;/a&gt; is a framework scaffolding tool that integrates multiple popular components&lt;br&gt;
and technologies, including rpcx, fasthttp, gorm, redigo, swagger, and opentracing, among&lt;br&gt;
others. Its goal is to provide developers with a solution for quickly building microservice&lt;br&gt;
projects, offering rich functionality and scalability.&lt;/p&gt;
&lt;h2&gt;
  
  
  go-dandelion-cli Usage
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Installation
```
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;go get github.com/gly-hub/go-dandelion/go-dandelion-cli@latest&lt;br&gt;
go install github.com/gly-hub/go-dandelion/go-dandelion-cli@latest&lt;/p&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
## 2. Create a Project
Create a local project directory and create the corresponding project based on the prompts.
```shell


# Create an application
go-dandelion-cli app -n go-admin-example
# Enter the application directory
cd go-admin-example
# Build the service
go-dandelion-cli build -n go-admin-example
Enter the type of service to create, enter a number (1 for rpc, 2 for http): 1
RPC service name: example-server
Initialize MySQL (y/n): y
Initialize Redis (y/n): y
Initialize logger (y/n): y
Initialize trace links (y/n): y


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h2&gt;
  
  
  3. Run the Project
&lt;/h2&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;

&lt;span class="nb"&gt;cd &lt;/span&gt;example-server
&lt;span class="c"&gt;# Enter the service directory&lt;/span&gt;
go build &lt;span class="nt"&gt;-o&lt;/span&gt; example-server
&lt;span class="c"&gt;# Run the service&lt;/span&gt;
./example-server server


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/team-dandelion" rel="noopener noreferrer"&gt;
        team-dandelion
      &lt;/a&gt; / &lt;a href="https://github.com/team-dandelion/go-dandelion" rel="noopener noreferrer"&gt;
        go-dandelion
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Use golang to integrate rpcx, fasthttp's microservices framework, including current limiting, link tracking, service discovery, and more. Scaffolding tools can be used to quickly build projects.（使用golang集成rpcx、fasthttp的微服务框架，包含限流、链路追踪、服务发现等。可使用脚手架工具快速构建项目。）
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;&lt;a href="https://github.com/team-dandelion/go-dandelionreadme-ZH.md" rel="noopener noreferrer"&gt;中文&lt;/a&gt;|English&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;About go-dandelion&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;The go-dandelion project aims to provide developers with a project framework that integrates various components, making it easy to build projects and improve development efficiency. It eliminates the need to spend time on integrating different components, allowing developers to focus on business development.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/team-dandelion/go-dandelion/actions" rel="noopener noreferrer"&gt;&lt;img src="https://github.com/team-dandelion/go-dandelion/workflows/Go/badge.svg?branch=main" alt="Go"&gt;&lt;/a&gt;
&lt;a href="https://goreportcard.com/report/github.com/team-dandelion/go-dandelion" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/722cd14f18460a1c22b74708e00a919e52ecd5ba8229a4cf025e89852bbbdd99/68747470733a2f2f676f7265706f7274636172642e636f6d2f62616467652f6769746875622e636f6d2f7465616d2d64616e64656c696f6e2f676f2d64616e64656c696f6e" alt="Go Report Card"&gt;&lt;/a&gt;
&lt;a href="https://codecov.io/gh/gly-hub/go-dandelion" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/b9e23d62cf484c40687c0d1ffbc9058c3f4cd5878159f44f432be60895d26f6f/68747470733a2f2f636f6465636f762e696f2f67682f676c792d6875622f676f2d64616e64656c696f6e2f6272616e63682f6d61696e2f67726170682f62616467652e737667" alt="codecov"&gt;&lt;/a&gt;
&lt;a href="https://opensource.org/licenses/apache-2-0/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/6b8142ea1fd29bb7deae76d0501677912337535b6fa781eb7af22b7e83bc0c3a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d417061636865322e302d627269676874677265656e2e737667" alt="MIT license"&gt;&lt;/a&gt;
&lt;a href="https://pkg.go.dev/github.com/team-dandelion/go-dandelion/go-dandelion-cli?tab=doc" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/5dc7b931b71a0472482aa1c15d34dbfdd42f1dac5fe7aa164e799a81171b3f78/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f72656c656173652d312e322e302d77686974652e737667" alt="Release"&gt;&lt;/a&gt;
&lt;a href="https://pkg.go.dev/github.com/team-dandelion/go-dandelion/go-dandelion-cli?tab=doc" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/898be4f0fb75aee05f46b467ffcd576963fd204f7b7b0b5a961a66d64e1ad3eb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f676f2e6465762d7265666572656e63652d626c75653f6c6f676f3d676f266c6f676f436f6c6f723d7768697465" alt="Go.Dev reference"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.murphysec.com/console/report/1666706410597801984/1666706410635550720" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/e918e93f155a8e78e7f678425a60b2e1d49d89c7ab68ccf2cedec5955d776677/68747470733a2f2f7777772e6d75727068797365632e636f6d2f706c6174666f726d332f7633312f62616467652f313636363730363431303633353535303732302e737667" alt="Security Status"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Integration&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/smallnest/rpcx" rel="noopener noreferrer"&gt;rpcx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/valyala/fasthttp" rel="noopener noreferrer"&gt;fasthttp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/qiangxue/fasthttp-routing" rel="noopener noreferrer"&gt;fasthttp-routing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/go-gorm/gorm" rel="noopener noreferrer"&gt;gorm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/gomodule/redigo" rel="noopener noreferrer"&gt;redigo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/go-swagger/go-swagger" rel="noopener noreferrer"&gt;go-swagger&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/spf13/cobra" rel="noopener noreferrer"&gt;cobra&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/spf13/viper" rel="noopener noreferrer"&gt;viper&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/opentracing/opentracing-go" rel="noopener noreferrer"&gt;opentracing-go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Quickly create RPC services and HTTP services.&lt;/li&gt;
&lt;li&gt;Initialize MySQL, Redis, logger, and trace links quickly through configuration.&lt;/li&gt;
&lt;li&gt;Integrated logging, distributed tracing, rate limiting, circuit breaking, service registration, service discovery, and other features.&lt;/li&gt;
&lt;li&gt;Customizable middleware and plugins.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;go-dandelion-cli&lt;/h2&gt;

&lt;/div&gt;
&lt;a href="https://github.com/team-dandelion/go-dandelion-cli" rel="noopener noreferrer"&gt;
  go-dandelion-cli
&lt;/a&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🔥Contributors&lt;/h2&gt;

&lt;/div&gt;
&lt;a href="https://github.com/team-dandelion/go-dandelion/graphs/contributors" rel="noopener noreferrer"&gt;
  &lt;img src="https://camo.githubusercontent.com/4ab02447cbc1f07b98bfa71eda1445f5ae496c7f582288fd65d72c662df0dab5/68747470733a2f2f636f6e747269622e726f636b732f696d6167653f7265706f3d676c792d6875622f676f2d64616e64656c696f6e"&gt;
&lt;/a&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;⭐ Star the project&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;if you find it interesting!&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Open Source&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a href="https://github.com/team-dandelion/go-dandelionLICENSE" rel="noopener noreferrer"&gt;MIT License&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/team-dandelion/go-dandelion" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


</description>
      <category>dandelion</category>
      <category>microservices</category>
    </item>
  </channel>
</rss>
