ITエンジニア/デザイナ向けにオープンソースを毎日紹介

プログラミング言語 - Rustの記事一覧

プレミアムユーザー限定記事

MOONGIFTプレミアムは、月額500円の有料サービスです。詳細はこちらから

もっと見る

List

  • 2019/11/13

Kagura - RustだけでWebアプリケーションを開発するフレームワーク

WebAssemblyを開発する際の最も基本的な言語となるのがRustです。WebAssemblyでは元々DOMやネットワーク操作ができませんが、Rustのwasm-bindingによってWebブラウザ側のAPIを実行できるようになりました。その結果、WebAssembly活用の幅が広がったと言えます。Kaguraはそ...

List

  • 2019/11/10

tinysearch - WebAssemblyを使ったWebブラウザ用全文検索

Webサイトには検索機能をつけるのが基本です。その多くの場合、サーバサイドでデータベースを検索し、その結果を返すようになっています。またはコンテンツデータをあらかじめクライアントサイドに持っておいて、JavaScriptで絞り込んだりします。今回紹介するtinysearchはクライアントサイドで検索を行います。特徴的な...

None

  • 2019/11/06

win32yank - CLIでWindowsのクリップボードを操作

Windowsアプリでクリップボードを操作するのはAPIを使わないといけないので、面倒な印象があります。適切な文字列をクリップボードに送信したり、逆に受け取った文字列で処理を判断できればとても便利なはずです。そこで使ってみたいのがwin32yankです。プログラムを実行できればクリップボードの読み書きが自在にできます。...

None

  • 2019/11/01

grex - パターンに合った正規表現を生成

正規表現は熟練のプログラマでさえ書き方を間違ってしまうことがあります。複雑な仕組みですが、使いこなすことでコード量を減らしたり、単なるコードだけでは難しいことも実現できます。そんな正規表現をどう書けばいいのか、その参考になるのがgrexです。## grexの使い方grexコマンドに続けてパターンになる文字列を記述します...

List

  • 2019/10/19

repub - MarkdownからePub3ファイルを生成

Webになぜこれほどコンテンツが増えたかと言えば、かつては手打ちだったHTMLがオーサリングツールによって簡単に編集できるようになったり、CMSで特別なソフトウェアを用意することなくコンテンツが作れるようになったことが大きいでしょう。なるべく敷居を下げないといけません。今回紹介するrepubはMarkdownファイルか...

List

  • 2019/10/17

Xprite Editor - レイヤーが使えるピクセルアートエディタ

ピクセルアート(ドット絵)は今なお色褪せない魅力があります。際限ない表現が可能になっている現代だからこそ、色数やサイズの制限された中での表現は知恵と工夫が必要で、それが魅力になっています。今回紹介するXprite Editorはレイヤーまで実装された多機能なピクセルアートエディタです。## Xprite Editorの...

List

  • 2019/10/09

WhatFreeWords - 位置情報を三つの単語に置き換え

スマートフォンが隆盛になるのに合わせて注目が集まっているのが位置情報です。位置情報を使ったサービスは実に多いですが、あの数字だけのデータは使い勝手が良いとは言えません。そんな現状を改善しようと取り組んでいるのがWhatFreeWordsです。位置情報をたった三つの単語に置き換えます。## WhatFreeWordsの使...

List

  • 2019/10/05

pastel - CUIで色を自在に生成

色との出会いは一期一会です。コンピュータ上で無数に表現できる色と偶然出会える可能性はごくごく僅かです。むしろ偶然生み出された色がとても魅力的だったというケースも多いでしょう。今回紹介するpastelはターミナル上で色を生成したり、情報を取得できるパレットのようなソフトウェアです。## pastelの使い方色名を指定して...

List

  • 2019/09/19

monolith - Webページをアーカイブ

過去に見たWebサイトにアクセスしてみたら、すでにコンテンツが消されていた…なんて経験は誰しもがあるはずです。あの時アーカイブしておけば…と後悔してもすでに遅く、思い立った時に行っておかないといけません。そこで使ってみたいのがmonolithです。## monolithの使い方アーカイブした例です。表示は崩れていません...

List

  • 2019/09/05

Starship - 開発者に役立つプロンプト表示

最近では開発環境がプロジェクトによって異なることも少なくありません。プログラミング言語自体はもちろん、パッケージ管理のバージョンが異なることもあります。仮想環境で開発することもできますが、rbenvやvirtualenvのようなツールを使うこともよくあります。今回紹介するStarshipはそんな開発環境の状態を見やすく...

List

  • 2019/09/04

Ruffle - Rust製のFlashプレイヤー

かつてWebコンテンツの多くを担っていたFlash。今はもう廃れて新作を見ることはほとんどなくなってしまいましたが、今なお利用しているサイトは多いです。WebブラウザもFlashプラグインをサポートしなくなっており、このままでは再生すらできなくなってしまいます。そこで作られているのがRuffleです。なんとWebAss...

List

  • 2019/08/28

Artichoke - WebAssemblyで実装されたRuby

Webブラウザ上でJavaScript以外のプログラミング言語を実行したいと言うニーズはとても強くあります。一つはJavaScriptで実行エンジンを開発する方法、またはコンパイルしてJavaScriptを生成する方法などがあります。最近有力なのがWebAssemblyで実行エンジンを実装する方法です。今回紹介するAr...

List

  • 2019/08/24

Silicon - ソースコードを綺麗な画像に

スライドの中でソースコードを取り扱いたいと思うことはよくあります。コードハイライトに対応していないと、見づらいものになってしまうでしょう。そのため、プログラミングエディタのコードをスクリーンショットで画像化したりしているかも知れません。そんな面倒はせずにSiliconを使えばコードを綺麗に画像化できます。## Sili...

List

  • 2019/08/15

Random World Map Generator - WebAssemblyで高速に3D/2D地図を生成

ゲームなどで地図データを使いたい時は良くあります。シムシティなどのシミュレーションゲームであったり、ローグライクなRPGでも使えます。そういった時の地図はある程度のランダム性があるとより面白いです。今回紹介するRandom World Map GeneratorはWeb上でランダムな地図データを生成してくれるサービスで...

None

  • 2019/08/10

rga - 画像や動画、圧縮ファイルにも対応したgrepツール

ストレージが大容量化することで保存されるファイルの数がどんどん増えています。それに伴って必要なファイルを探すのに苦労するようになります。そこでローカル検索が活躍しますが、ストレージ全体から検索したいというニーズはそれほど多くないかと思います。そこで使ってみたいのがrgaです。grepツールですが、対応している拡張子が多...

None

  • 2019/08/09

mask - Markdownファイルを使ったタスクランナー

あらかじめ設定した処理を実行する、いわゆるタスクランナーは多数あります。GulpやGradleなどが有名です。多くのタスクランナーはシステム向けで、数ヶ月後にメンテナンスするのが困難になったりします。今回紹介するmaskはMarkdownファイルを使ったタスクランナーです。コメントも使えたりして、使い勝手が良さそうです...

None

  • 2019/08/05

Volta - Rust製のnodeバージョン/ライブラリ管理

nodeにおけるバージョン管理はndenvを使う人が多いのではないでしょうか。また、ライブラリはnpmやyarnを使うことが多いです。そして、それらのライブラリはnodeで書かれているものになります。今回紹介するVoltaは一風変わっており、Rustで書かれています。## Voltaの使い方nodeをインストールする操...

List

  • 2019/07/29

Osgood - 高速なJavaScriptのHTTPサーバ

ちょっとしたWebサーバを立てたいと思った時、ワンライナーをよく使います。それよりちょっとだけ複雑なルーティングが必要になったりすると、途端にプログラミング量が増えてしまいます。今回紹介するOsgoodはそのちょっとした部分を救ってくれる、そんなJavaScriptのHTTPサーバです。## Osgoodの使い方Osg...

List

  • 2019/07/19

boa - Rust製のJavaScript実行エンジン

RustでWebAssemblyを開発している人は多いでしょう。JavaScriptと比べて高速に動作しますが、コンパイルが伴うので動的に動作を変えるのが困難です。例えばユーザにコードを入力してもらって、それをマクロ的に動かしたいということもあるでしょう。そんな時に使ってみたいのがboaです。Rustで作られたJava...

List

  • 2019/06/19

Makepad - アニメーションが付いたIDE

AtomやVisual Studio CodeがJavaScriptなどを使ってエディタを実現していることもあり、Webブラウザベースのエディタも現実的になっています。コードをローカルに保存する必要もなく、コンパイルや実行はサーバ上で簡単にでき、メリットも数多くあります。そんなWebブラウザ向けのエディタとして紹介した...