プログラミングのゴミ箱

日々の学習の中で知らなかったことについて、調べたことを解説します。

2022-01-01から1年間の記事一覧

びっとこいんのほわいとぺーぱー

はじめに この記事はビットコインのホワイトペーパーを読んで要点を分かりやすく解説したものです。 他にもいろんなチェーンのホワイトペーパーを出すつもりなので、気に入ったらそちらも見てくれると嬉しいです!https://bitcoin.org/bitcoin.pdf ホワイト…

ChainLinkを使ってIPFSからデータを取ってきた

ChainLinkを使ってIPFSからデータを引っ張ってきたときの備忘録。 Pinataを使ってデータをIPFSに登録 Pinataを使ってこのデータをIPFS上に保存。 { "HP": 100 } 実際にデータを撮ってみる Remixを使って開発していきます。まずは、ライブラリのインポート。 …

ERC721のNFTをERC20のトークンでmintする

ERC721で作ったトークンをERC20のトークンを支払うことでmintする仕組みを作ろうと思ったときに、意外と手間取ったのでそのやり方を書いていきます。 この記事は、Remix IDEを使ったことがある人が対象です。 ERC20, ERC721のトークンを作る 簡単に、OpenZep…

Shh Bzzってなんだろう?(web3.js)

web3.jsのドキュメントを読んでいるとShhとBzzという単語に遭遇した。 ドキュメントを読んでもよく分からなかったので、リサーチしたレポ。web3.jsとは(web3.jsの基本概念や特徴)|Ethereum JavaScript Libraries: web3.js vs. ethers.js (Part I)[邦訳] こ…

Crypto Zombieで始めるSolidity入門⑥

この記事は前回の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jp このシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひ…

Crypto Zombieで始めるSolidity入門⑤

この記事は前回の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jp このシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひ…

Crypto Zombieで始めるSolidity入門④

この記事は前回の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jp このシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひ…

Ctypto Zombieで始めるSolidity入門③

この記事は前回の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jpこのシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひや…

Crypto Zombieで始めるSolidity入門②

この記事は前回の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jpこのシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひや…

Crypto Zombieで始めるSolidity入門①

今回のシリーズではCrypto ZombieというSolidityの学習が出来るサイト(しかも無料で)の内容を自分なりにまとめます。 入門編はこれ一つで全部学べるみたいなので、みなさんもぜひやってみてください!cryptozombies.io コントラクトの書き方 新しいコントラ…

Remixを使ってみた!

Remixって? solidityでのスマートコントラクト開発をめちゃんこ楽にしてくれるブラウザアプリケーションだよ。 必要な環境 npmが使えること gethでプライベートネットワークに接続できること 早速使ってみる まずはremixdというツールをnpmでインストール $…

Ethereum入門読んでみた⑥

この記事はEthereum入門読んでみた⑤の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jpこちらの記事を参照しています。 メインネットに接続する - Ethereum入門 メインネットへの接続 任意のディレクトリに移動したあと、以下のコマンドを実行し…

Ethereum入門読んでみた⑤

この記事はEthereum入門読んでみた④の続きです。 前回の記事はこちら↓ chanichiwasshoi.hateblo.jpまた、この記事は以下のサイトを参照しています。 スマートコントラクトを作成し実行する - Ethereum入門(solcなどのツールのインストールは上記のサイトを見…

Ethereum入門読んでみた④

この記事はEthereum入門読んでみた③の続きです。 前回の記事はこちら ↓ chanichiwasshoi.hateblo.jp参照しているサイトはこちらです。 etherを送金する - Ethereum入門 etherの送金 // 送金前にアカウントのロックを解除 > personal.unlockAccount(eth.accou…

Ethereum入門読んでみた③

この記事は前回の続きです。 chanichiwasshoi.hateblo.jpこのページを読んでます。 etherを採掘する - Ethereum入門 Gethとは GethとはEthereumネットワークに参加するためのCUIクライアントでのことです。Gethを通じて etherの採掘 etherの送金 スマート・…

Ethereum入門読んでみた②

この記事は前回の記事の続きです。 chanichiwasshoi.hateblo.jp 以下の記事を読んだ備忘録的なところを書いていきます。 Ethereumとは - Ethereum入門 Ethereumとは Ethereumが登場する以前のブロックチェーンアプリ開発方法は主に次の2つであった。 新たに…

Ethereum入門を読んでみた①

https://book.ethereum-jp.net/what_is_ethereum/blockchainrev_md UTXO(Unspent Transaction Output)とは? まだ他の誰かに送るために使用されていないトランザクションのこと。 あるユーザーの保有BTC量は、そのユーザーに向けられたUTXOの総和によって求め…

ブロックチェーンの仕組み

EnterChain(https://enterchain.online/home)のPhase1で学習したことの備忘録。 ブロックチェーンとは データの改竄を不可能(困難)にする技術。その応用性の高さから様々なビジネスに結び付けられることが期待される。 一般的にはビットコインなどの暗号資産…

WebSocket connection to 'ws://localhost:3000/ws' failed: と言われたら<React>

Reactを使ってアプリを使っていると[WebSocket connection to 'ws://localhost:3000/ws' failed: ]と怒られた。 原因が分からなくて放置していたけど、流石にエラーがうるさいので対応することにした。環境としてはDockerを使って、3000番ポートのReactアプ…

サンプルプログラムで学ぶPHPでExcel操作(初心者向け) 前編

目的 PhpSpreadsheetを使ってPHPでExcelを操作する方法をゴリラでもわかるようにサンプルプログラムを作りながら解説。 こんな感じのアプリができます。 PhpSpreadsheetって? Phpを使ってExcelを操作するためのライブラリです。 大昔にPHPExcelというライブ…

React+TypeScriptな環境を作る

1. プロジェクトの作成 npm i -g create-react-app create-react-app react-app --template typescriptこれで基本的な環境は完成。楽勝。2 import文をを絶対パスで指定できるようにする。tsconfig.jsonを以下のように編集 { "compilerOptions": { ... "baseU…

Rails5 + React(TypeScript)でログイン機能を実装する

今回はアプリ開発の上で頻繁に使うであろうログイン機能を作ってみました。意外と苦戦することも多かったのでその備忘録です。 主に参考にしたサイトは下のやつです。 qiita.com作ったアプリはGithubに公開しています。 https://github.com/trmti/FileSharin…

Railsでrails db:migrateしようとしたら「ActiveRecord::NoEnvironmentInSchemaError」と怒られた。

Rails db:migrateを実行すると以下のようなエラーが起きた。 aborted! ActiveRecord::NoEnvironmentInSchemaError: Environment data not found in the schema. To resolve this issue, run: bin/rails db:environment:set RAILS_ENV=development /usr/local…

Reactで環境変数を扱う

Reactで環境変数を扱いたいときには、ルートディレクトリに「.env」ファイルを作成し、その中にREACT_APP_という名前に続く変数名をつけた変数を定義することで扱えるようになる。 # develop REACT_APP_API_HOST=localhost:3000 <|| こんな感じ。変数名の先…

Reactで受け取ったpropsから使いたいものだけ取り出す

Reactで独自コンポーネントを作成するときに、引数を一つだけ取り出しもとの引数から取り出した一つを削除したい。 例えば{hoge, fuga, hogefuga}という引数をhogefugaと{hoge, fuga}に分けたいときには const Button = props => { {hogefuga, ...other} = p…

Reactでpublicフォルダーを使う方法

Using the Public Folder | Create React App これが参考になった。create-react-appを実行すると、ルートディレクトリにpublicという名前のフォルダが作られる。 このフォルダにはアプリの中で使う画像など外に公開したいデータが入っている。 ここにsample…

typescriptのantdで独自コンポーネントを定義するときのprops

How to extend an Ant Design component - DEV Community ↑これが参考 typescriptのantdで独自コンポーネントを作るときにantdのpropsはそのまま受け継いで、他に自分が定義したpropsも受け取りたいんだけどどうしたらいいんだろうとちょっと詰まったのでメ…

Antdでデザインが適応されない!バグ!?

antdを使ってreactアプリを開発しようと意気込みいざ使ってみると、全然おしゃれじゃない画面が出てきた。 どうやらcssが動いていないようだ。調べてみるとindex.js(index.tsx)などのファイルに以下のコードを記述しなければいけないらしい。 import 'antd/d…

DockerでCOPYしてるはずなのにファイルがないと言われた

こんなふうなDockerfileを作って実行してたらさっきまで動いてたのに急に動かなくなった。 FROM node:17-alpine3.14 WORKDIR /usr/src/app/rails-react-app COPY ./rails-react-app/package*.json /usr/src/app/rails-react-app/ 私の場合はDockerDesktopをR…

Atomicデザインを学ぶ

AtomicデザインとはUIを効率的に作るために作られたUI構成のパターン。 Atomicデザインでは画面上のにある部品をコンポーネントとして分割し、小さなコンポーネントを組み合わせてより大きなコンポーネントを作っていく。 Atomicデザインの概要 Atom(原子) …