<?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>DEV Community: daoleno</title>
    <description>The latest articles on DEV Community by daoleno (@daoleno).</description>
    <link>https://dev.to/daoleno</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%2F130922%2F4faaa322-495c-408d-936a-d22ab2ce8b8a.png</url>
      <title>DEV Community: daoleno</title>
      <link>https://dev.to/daoleno</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/daoleno"/>
    <language>en</language>
    <item>
      <title>Web3 by Example</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Tue, 08 Mar 2022 02:17:50 +0000</pubDate>
      <link>https://dev.to/daoleno/web3-by-example-2dli</link>
      <guid>https://dev.to/daoleno/web3-by-example-2dli</guid>
      <description>&lt;p&gt;I built a sample program site using interactive annotations to introduce web3 development.&lt;/p&gt;

&lt;p&gt;It includes examples of accounts, transactions, smart contracts, and there will be more.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://web3byexample.com/"&gt;https://web3byexample.com/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>web3</category>
      <category>ethereum</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>A web3 project to help you enter the crypto world</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Thu, 23 Dec 2021 05:48:49 +0000</pubDate>
      <link>https://dev.to/daoleno/a-web3-project-to-help-you-enter-the-crypto-world-1oo</link>
      <guid>https://dev.to/daoleno/a-web3-project-to-help-you-enter-the-crypto-world-1oo</guid>
      <description>&lt;p&gt;&lt;a href="https://bboxdao.com/"&gt;https://bboxdao.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have built a project to help people learn and enter the world of cryptocurrency. I hope some of you can join us.&lt;/p&gt;

&lt;p&gt;Features supported now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Crypto News&lt;/li&gt;
&lt;li&gt;Crypto Jobs&lt;/li&gt;
&lt;li&gt;Issue Tokens(ERC20/ERC721)&lt;/li&gt;
&lt;li&gt;NFT Storage&lt;/li&gt;
&lt;li&gt;NFT Gallery&lt;/li&gt;
&lt;li&gt;Token approval&lt;/li&gt;
&lt;li&gt;Gas Now&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>blockchain</category>
      <category>web3</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Tgraph - A Go package for drawing basic graphics in a terminal</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Tue, 09 Jun 2020 16:56:28 +0000</pubDate>
      <link>https://dev.to/daoleno/tgraph-a-go-package-for-drawing-basic-graphics-in-a-terminal-147b</link>
      <guid>https://dev.to/daoleno/tgraph-a-go-package-for-drawing-basic-graphics-in-a-terminal-147b</guid>
      <description>&lt;p&gt;I just released a go package for drawing basic graphics in a terminal.&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/daoleno"&gt;
        daoleno
      &lt;/a&gt; / &lt;a href="https://github.com/daoleno/tgraph"&gt;
        tgraph
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A Go package for drawing basic graphics in a terminal
    &lt;/h3&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;It supports:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bar Graphs&lt;/li&gt;
&lt;li&gt;Multi-variable&lt;/li&gt;
&lt;li&gt;Stacked charts&lt;/li&gt;
&lt;li&gt;Emoji&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Package can draw some basic graphics in a terminal like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;tgraph data2.csv &lt;span class="nt"&gt;--title&lt;/span&gt; &lt;span class="s2"&gt;"Most Loved Languages"&lt;/span&gt;

Most Loved Languages
        Go: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 86.1
    Kotlin: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 67.1
    Python: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 66.7
      Rust: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 62.9
TypeScript: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 62.3
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;An example using emoji:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;tgraph data2.csv &lt;span class="nt"&gt;--title&lt;/span&gt; &lt;span class="s2"&gt;"Most Loved Languages"&lt;/span&gt; &lt;span class="nt"&gt;--custom-tick&lt;/span&gt; 🔥 &lt;span class="nt"&gt;--width&lt;/span&gt; 30

Most Loved Languages
        Go: 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥 86.1
    Kotlin: 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥 67.1
    Python: 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥 66.7
      Rust: 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥 62.9
TypeScript: 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥 62.3
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;An example with colors:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;tgraph data1.csv &lt;span class="nt"&gt;--title&lt;/span&gt; &lt;span class="s2"&gt;"Most Loved/Dreaded Languages"&lt;/span&gt; &lt;span class="nt"&gt;--color&lt;/span&gt; red,yellow
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7QArvmBI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qf9q6ijkoiolyxa3c8ac.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7QArvmBI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qf9q6ijkoiolyxa3c8ac.png" alt="color graph"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An example with stacked:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;tgraph data1.csv &lt;span class="nt"&gt;--title&lt;/span&gt; &lt;span class="s2"&gt;"Most Loved/Dreaded Languages"&lt;/span&gt; &lt;span class="nt"&gt;--color&lt;/span&gt; red,yellow &lt;span class="nt"&gt;--stacked&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7QArvmBI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qf9q6ijkoiolyxa3c8ac.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7QArvmBI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qf9q6ijkoiolyxa3c8ac.png" alt="stacked graph"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>go</category>
      <category>terminal</category>
      <category>showdev</category>
    </item>
    <item>
      <title>What is higan and how I build it</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Mon, 04 May 2020 13:03:46 +0000</pubDate>
      <link>https://dev.to/daoleno/what-is-higan-and-how-i-build-it-g77</link>
      <guid>https://dev.to/daoleno/what-is-higan-and-how-i-build-it-g77</guid>
      <description>&lt;h2&gt;
  
  
  What is higan
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://higan-bana.com/"&gt;https://higan-bana.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Higan is a public, trustable, and unforgotten database for people who needs to be remembered.&lt;/p&gt;

&lt;p&gt;For people who died because of COVID-19.&lt;/p&gt;

&lt;p&gt;What does that mean?&lt;/p&gt;

&lt;p&gt;Until now, there are &lt;a href="https://corona-stats.online/"&gt;248,811&lt;/a&gt; people who died because of COVID-19. Many people lost their families, friends, and heroes in this disaster. I think we need a place to remember these people.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Public - You can submit some information about people you know. And that information will be public, which means anyone can access it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Trustable -  The project is open source, you can build your own service and synchronize all the data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unforgotten - This is a blockchain project where all data is tracked and recorded. When more people are involved, the data is harder to tamper with and less likely to be lost.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In addition to COVID19, you can also record those people you love and respect. You can think of Higan as an Internet tombstone.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Higan&lt;/code&gt; is a Japanese word(Chinese: 彼岸) for another place where the dead are going.&lt;br&gt;
&lt;code&gt;Higan Bana&lt;/code&gt; is a Japanese word(Chinese: 彼岸花). It's a flower that is described in Chinese to guide the dead into the next reincarnation.&lt;/p&gt;
&lt;h2&gt;
  
  
  How I built it.
&lt;/h2&gt;

&lt;p&gt;There are two separate projects, Higan and Higan-ui.&lt;/p&gt;
&lt;h3&gt;
  
  
  Higan
&lt;/h3&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/daoleno"&gt;
        daoleno
      &lt;/a&gt; / &lt;a href="https://github.com/daoleno/higan"&gt;
        higan
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A public, trustable, and unforgotten database for people who needs to be remembered.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
Higan · &lt;a href="https://github.com/daoleno/higan/blob/master/LICENSE"&gt;&lt;img src="https://camo.githubusercontent.com/890acbdcb87868b382af9a4b1fac507b9659d9bf/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667" alt="GitHub license"&gt;&lt;/a&gt; &lt;a href="https://github.com/daoleno/higan/pulls"&gt;&lt;img src="https://camo.githubusercontent.com/d4e0f63e9613ee474a7dfdc23c240b9795712c96/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5052732d77656c636f6d652d627269676874677265656e2e737667" alt="PRs Welcome"&gt;&lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Higan is a blockchain project for building online tombstone for the dead.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/daoleno/higan-ui"&gt;Higan-ui&lt;/a&gt; - the front end of higan.&lt;/p&gt;
&lt;h2&gt;
Why Higan?&lt;/h2&gt;
&lt;p&gt;People will forget, higan will not.&lt;/p&gt;
&lt;p&gt;For one you love, for the people who died because of the COVID-19.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Data can be accessed by anyone.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Data can not be changed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Anyone can setup his own higan.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
Build&lt;/h2&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;make install&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;
Run local test node&lt;/h2&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;sh init.sh&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;
License&lt;/h2&gt;
&lt;p&gt;Higan is &lt;a href="https://raw.githubusercontent.com/daoleno/higan/master/./LICENSE"&gt;MIT licensed&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/daoleno/higan"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;Higan is a blockchain project based on &lt;a href="https://github.com/cosmos/cosmos-sdk"&gt;cosmos-sdk&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The Cosmos-SDK is a framework for building blockchain applications in Golang. It's like ruby-on-rails for ruby.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--miMCN1T4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/z1l75r6k27s1ghylrl9f.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--miMCN1T4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/z1l75r6k27s1ghylrl9f.jpg" alt="Tendermint stack"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Higan is a &lt;code&gt;cosmos-sdk&lt;/code&gt; application. So as shown in the figure. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;higancli&lt;/code&gt;(command line tool of higan) will start a rest server that accepts API requests. &lt;/li&gt;
&lt;li&gt;The rest server sends a request message to &lt;code&gt;higand&lt;/code&gt; (ABCI APP developed through cosmos-sdk) via &lt;code&gt;tendermint&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;higand&lt;/code&gt; will validate the message, handle it, and store the transaction in multistore, which is multiple key-value databases built into &lt;code&gt;cosmos-sdk&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Status and transactions will be synchronized in the P2P network via &lt;code&gt;tendermint&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here, cosmos-sdk has developed many modules such as auth, bank, etc. that allow you to easily develop a &lt;a href="https://en.wikipedia.org/wiki/Proof_of_stake"&gt;PoS&lt;/a&gt;-based blockchain.&lt;/p&gt;

&lt;p&gt;Tendermint does the very heavy work of &lt;a href="https://en.wikipedia.org/wiki/Byzantine_fault"&gt;pBFT&lt;/a&gt;-based consistency layer, p2p layer, etc. and can easily synchronize the state between nodes&lt;/p&gt;

&lt;p&gt;So what I need to do is develop a module called &lt;code&gt;tombstone&lt;/code&gt;.&lt;br&gt;
This module handles my custom messages and writes the record to the multistore.&lt;/p&gt;

&lt;p&gt;Eventually, there will be two programs, &lt;code&gt;higand&lt;/code&gt; to run the blockchain and &lt;code&gt;higancli&lt;/code&gt; to send or query transactions to &lt;code&gt;higand&lt;/code&gt;.&lt;/p&gt;
&lt;h3&gt;
  
  
  Higan-ui
&lt;/h3&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/daoleno"&gt;
        daoleno
      &lt;/a&gt; / &lt;a href="https://github.com/daoleno/higan-ui"&gt;
        higan-ui
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Front-end of the project Higan
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
Higan UI · &lt;a href="https://app.netlify.com/sites/higan-bana/deploys" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/969ff93fc98036d3d68f7ea216f614988b03bdeb/68747470733a2f2f6170692e6e65746c6966792e636f6d2f6170692f76312f6261646765732f34343264653237342d613936352d346337302d396633352d3165656531666361656664392f6465706c6f792d737461747573" alt="Netlify Status"&gt;&lt;/a&gt; &lt;a href="https://github.com/daoleno/higan/blob/master/LICENSE"&gt;&lt;img src="https://camo.githubusercontent.com/890acbdcb87868b382af9a4b1fac507b9659d9bf/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667" alt="GitHub license"&gt;&lt;/a&gt; &lt;a href="https://github.com/daoleno/higan/pulls"&gt;&lt;img src="https://camo.githubusercontent.com/d4e0f63e9613ee474a7dfdc23c240b9795712c96/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5052732d77656c636f6d652d627269676874677265656e2e737667" alt="PRs Welcome"&gt;&lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;The front end of the project &lt;a href="https://github.com/daoleno/higan"&gt;higan&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;
Requirment&lt;/h3&gt;
&lt;p&gt;Run &lt;a href="https://github.com/daoleno/higan"&gt;higan&lt;/a&gt;, and ensure rest-server is ok.&lt;/p&gt;
&lt;p&gt;Config &lt;code&gt;cors&lt;/code&gt; in Nginx or anything similar.&lt;/p&gt;
&lt;h2&gt;
Install&lt;/h2&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;yarn install&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
Run project&lt;/h3&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;yarn start&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Runs the app in the development mode.&lt;br&gt;
Open &lt;a href="http://localhost:3000" rel="nofollow"&gt;http://localhost:3000&lt;/a&gt; to view it in the browser.&lt;/p&gt;
&lt;p&gt;The page will reload if you make edits.&lt;br&gt;
You will also see any lint errors in the console.&lt;/p&gt;
&lt;h2&gt;
License&lt;/h2&gt;
&lt;p&gt;Higan is &lt;a href="https://raw.githubusercontent.com/daoleno/higan-ui/master/./LICENSE"&gt;MIT licensed&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/daoleno/higan-ui"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;It is a very simple front end of the &lt;code&gt;higand&lt;/code&gt; server. It can display the records that have been stored on the blockchain, submit a record, show the height of the block, and show the number of records. It also has a very rudimentary search feature.&lt;/p&gt;

&lt;p&gt;I use react, react-hooks, and tailwindcss to build it.&lt;/p&gt;

&lt;p&gt;I really hate &lt;code&gt;CSS&lt;/code&gt;, thanks &lt;a href="https://tailwindcss.com/"&gt;tailwindcss&lt;/a&gt; and &lt;a href="https://tailwindui.com/"&gt;tailwindui&lt;/a&gt;. Saved my life. Helped me build my first front-end project.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I deployed it
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Deploy higand and higancli rest-server to aws
&lt;/h3&gt;

&lt;p&gt;I started an EC2 instance on AWS.&lt;/p&gt;

&lt;p&gt;I use ansible to manage higan projects. If anyone is interested, I can open source it.&lt;/p&gt;

&lt;p&gt;The ansible script performs some initialization work, creating a systemd service for higand and a systemd service for higancli rest-server.&lt;/p&gt;

&lt;p&gt;Then there is an nginx that forwards the request to the REST service. Nginx configures some &lt;code&gt;cors&lt;/code&gt; header and turns on https.&lt;/p&gt;

&lt;p&gt;I use &lt;a href="https://certbot.eff.org/"&gt;cerbot&lt;/a&gt; to configure let's encrypt. It's very simple.&lt;/p&gt;

&lt;h3&gt;
  
  
  Deploy higan-ui to netlify
&lt;/h3&gt;

&lt;p&gt;Just let netlify connect to my gitHub, and netlify will perform an automated deployment and provide free let's encrypt based encryption. I applied for my domain on godaddy. Then I switched to netlify's DNS resolution.&lt;/p&gt;

&lt;h2&gt;
  
  
  Finally
&lt;/h2&gt;

&lt;p&gt;Welcome to contribute.&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>covid19</category>
      <category>react</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>MT(my thoughts) - A note tool can record your thoughts in terminal</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Wed, 29 Apr 2020 05:19:10 +0000</pubDate>
      <link>https://dev.to/daoleno/mt-my-thoughts-release-0-0-1-9m6</link>
      <guid>https://dev.to/daoleno/mt-my-thoughts-release-0-0-1-9m6</guid>
      <description>&lt;p&gt;I write a tool that can record thoughts in the terminal. So as long as you have a terminal, you can conveniently record and manage your thoughts.&lt;/p&gt;

&lt;p&gt;Some use case: iterm, vscode terminal, any server terminal.&lt;/p&gt;

&lt;p&gt;I just released the first version. Hope somebody would like it. 🍻&lt;/p&gt;


&lt;div class="ltag_asciinema"&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://res.cloudinary.com/practicaldev/image/fetch/s--vJ70wriM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/daoleno"&gt;
        daoleno
      &lt;/a&gt; / &lt;a href="https://github.com/daoleno/mt"&gt;
        mt
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      My Thoughts - A tool records your valuable thoughts.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
MT - My thoughts&lt;/h1&gt;
&lt;p&gt;Record your valuable thoughts on terminal.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://asciinema.org/a/325041" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/a63bc29d12a6bc3747b72467b23e84d076e8b4e4/68747470733a2f2f61736369696e656d612e6f72672f612f3332353034312e737667" alt="asciicast"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
Build&lt;/h2&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;go build &lt;span class="pl-c1"&gt;.&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;
Install&lt;/h2&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;go install &lt;span class="pl-c1"&gt;.&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h2&gt;
Usage&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;Rocord all my thoughts

Usage:
  mt [command]

Available Commands:
  cat         View a thought
  clean       Clean all thoughts
  completion  Generates bash/zsh completion scripts
  decrypt     Decrypt all thoughts
  remove      Remove a thought
  encrypt     Encrypt all thoughts
  help        Help about any command
  list        List all thoughts
  open        Open a thought
  rename      Rename a thought
  render      Render all markdown to beautiful html
  report      Report
  web         Server static html page

Flags:
  -h, --help   help for mt

Use "mt [command] --help" for more information about a command.
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;
Completion&lt;/h2&gt;
&lt;h3&gt;
Zsh&lt;/h3&gt;
&lt;p&gt;Generate completion script&lt;/p&gt;
&lt;div class="highlight highlight-source-shell"&gt;&lt;pre&gt;mt completion&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Put somewhere in your &lt;code&gt;$fpath&lt;/code&gt; named &lt;code&gt;_mt&lt;/code&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# example path
/usr/local/share/zsh/site-functions/_mt
&lt;/code&gt;&lt;/pre&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/daoleno/mt"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


</description>
      <category>showdev</category>
      <category>productivity</category>
      <category>go</category>
    </item>
    <item>
      <title>Simple tricks that can speed up your development cycle</title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Thu, 14 Nov 2019 07:03:38 +0000</pubDate>
      <link>https://dev.to/daoleno/simple-tricks-that-can-speed-up-your-development-cycle-1b6j</link>
      <guid>https://dev.to/daoleno/simple-tricks-that-can-speed-up-your-development-cycle-1b6j</guid>
      <description>&lt;p&gt;I recently watched Bret Victor's video - Inventing on Principle. That is so inspired. The demos are awesome in their own right. He talked about his principle: &lt;strong&gt;Creators need an immediate connection to what they create.&lt;/strong&gt;&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/PUv66718DII"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Inspired by that, I start thinking about how to speed up my development feedback. Here is a little trick that I think is useful to me.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduce two core tools
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/ggreer/the_silver_searcher" rel="noopener noreferrer"&gt;ag&lt;/a&gt;: The Silver Searcher. Like ack, but faster.&lt;br&gt;
&lt;a href="http://eradman.com/entrproject/" rel="noopener noreferrer"&gt;entr&lt;/a&gt;: Run arbitrary commands when files change.&lt;/p&gt;
&lt;h2&gt;
  
  
  Save code, See the result
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Web sample
&lt;/h3&gt;

&lt;p&gt;When any html/css/js files change, the current chrome page will refresh.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ag &lt;span class="nt"&gt;-l&lt;/span&gt; &lt;span class="nt"&gt;--html&lt;/span&gt; &lt;span class="nt"&gt;--css&lt;/span&gt; &lt;span class="nt"&gt;--js&lt;/span&gt; | entr ./reload-browser.sh chrome
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can download &lt;code&gt;reload-browser.sh&lt;/code&gt; from &lt;a href="https://gist.github.com/daoleno/4e155bb65c433d490b3a70e5a96377c0" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fpb1w8lgt01mg2xnogi6w.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fpb1w8lgt01mg2xnogi6w.gif" alt="autohtml"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Golang sample
&lt;/h3&gt;

&lt;p&gt;When any go files change, my custom run script will be executed. I can build, start, run tests on my project automatically.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ag &lt;span class="nt"&gt;-l&lt;/span&gt; &lt;span class="nt"&gt;--go&lt;/span&gt; | entr &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt; ./run.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F2xt0nldtt6c02wqsfpb6.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F2xt0nldtt6c02wqsfpb6.gif" alt="autogo"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>linux</category>
      <category>todayilearned</category>
    </item>
    <item>
      <title>Telegram bot: Super Thinking </title>
      <dc:creator>daoleno</dc:creator>
      <pubDate>Thu, 07 Nov 2019 03:21:11 +0000</pubDate>
      <link>https://dev.to/daoleno/telegram-bot-super-thinking-27gm</link>
      <guid>https://dev.to/daoleno/telegram-bot-super-thinking-27gm</guid>
      <description>&lt;p&gt;Gabriel Weinberg writes a book named &lt;a href="https://superthinking.com/"&gt;Super Thinking: The Big Book Of Mental Models&lt;/a&gt; recently. I extract the full list of &lt;a href="https://superthinking.com/download/MentalModels.pdf?forcedefault=true"&gt;mental models&lt;/a&gt;. And Write a telegram bot that can send a model every day.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qh6g-B7m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/q4dvry7dtcp16x9ejj1b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qh6g-B7m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/q4dvry7dtcp16x9ejj1b.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bot source code: &lt;a href="https://github.com/daoleno/super-thinking-bot"&gt;https://github.com/daoleno/super-thinking-bot&lt;/a&gt;&lt;br&gt;
Telegram channel: &lt;a href="https://t.me/superthinking2u"&gt;https://t.me/superthinking2u&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hope helpful for you.&lt;/p&gt;

</description>
      <category>go</category>
      <category>bot</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
