タグ

ブックマーク / www.moongift.jp (16)

  • CSS-Only Chat - JavaScriptを使わないWebチャット

    MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました 技術の凄さを感じるのはどんな時か。一見すると無理と思えるようなことを実現できてしまっている時もその一つです。最近では機械学習を用いて粗い映像を高画質化するプロジェクトもあります。SFと思わんばかりの世界が実現しようとしています。 今回紹介するCSS-Only Chatもすごいです。JavaScriptを使わずにリアルタイムに同期するWebチャットができます。 CSS-Only Chatの使い方 メイン画面です。文字は直接入力ではなく、ボタンを押します。 最後にSubmitを押すとテキストが送信されます。 双方向で文字列が送れます。 ネタはCSSで画像のリクエストを送り、そのファイル名に相当する文字をRedisに蓄積し、確定したタイミングで双方に送っているように見えます。全体像が分か

    CSS-Only Chat - JavaScriptを使わないWebチャット
    manaten
    manaten 2019/06/14
  • grasp - JavaScriptの構造を解析する検索/置換ツール MOONGIFT

    記法を習得しないといけないですが、その結果次第では開発が便利になりそうですよ。 正規表現を使うとプログラミングコードを一気に置き換えることができます。graspはそれをさらに柔軟に、そしてJavaScriptに特化させたソフトウェアになります。 grepや置換ツールの代替に使ってみると面白いかも知れません。使い方がこれまでにない感じですが、使いこなせば強力なツールになる可能性を秘めています。 インストールは簡単で、npmコマンドでできます。 $ npm install -g grasp 続いてヘルプ $ grasp --help Usage: grasp [option]... [selector] [file]... Search (or --replace) for selector in file(s) or standard input. For more help '--help

    grasp - JavaScriptの構造を解析する検索/置換ツール MOONGIFT
    manaten
    manaten 2013/11/11
    構文木書き換えかな?
  • Webアプリケーション開発に使えるJavaScriptテンプレート·OJ MOONGIFT

    OJはJavaScript製、MIT Licenseのオープンソース・ソフトウェアです。 Webサイトは自由度が高すぎるのが逆に難点に感じることがあります。そこで試してみたいのがOJです。JavaScriptでコンポーネントを定義し、HTMLを出力するテンプレートです。 例。ボタンやリストなどがオブジェクトとして定義できます。 Backbone.jsとの連携もサポート。 プラグインを使うことでYouTube埋め込みも簡単にできます。 AceEditorプラグインもあります。 GitHubボタンプラグイン。 OJではボタンなどを生成し、そのままclickなどのアクションを定義できるようになっています。よりWebアプリケーションとして開発がしやすいのではないでしょうか。もちろん出力されたHTMLはスタイルシートを使ってデザインできるようになっています。 MOONGIFTはこう見る 今後HTML

    Webアプリケーション開発に使えるJavaScriptテンプレート·OJ MOONGIFT
  • データベース無し、Markdownでコンテンツを作成するCMS·Pico MOONGIFT

    PicoはPHP製、MIT Licenseのオープンソース・ソフトウェアです。 CMS(コンテンツマネジメントシステム)と言えばデータベースにコンテンツを入れて、システムがそれを一覧にしたり詳細ページを作ったりします。運営担当者が自由にできるところは限られるものです。しかしPicoであればカスタマイズが容易でかつ高速なCMSが手に入ります。 フォルダを配置するだけで準備は完了です。インストールの手間もありません。 ファイル構成です。contentディレクトリの下にMarkdownで書かれたコンテンツがあります。 テーマ、プラグインがサポートされています。テンプレートエンジンはtwigになります。 Markdownファイルを修正すれば、それが自動的にコンテンツに反映されます。 テンプレート。見ても分かる通り簡単な作りです。 Picoはシンプルであり、データベースも不要で使える手軽なCMSとな

    データベース無し、Markdownでコンテンツを作成するCMS·Pico MOONGIFT
    manaten
    manaten 2013/07/15
  • WebフロントをScalaで開発·Scala.js MOONGIFT

    Scala.jsはScala製、Scala Licenseのオープンソース・ソフトウェアです。 JavaScriptはスクリプト言語であり、コンパイル系言語を使っているプログラマーにとっては使い勝手が悪いと感じてしまうようです。もしあなたがScalaの使い手であれば、ScalaでWebフロントエンドを開発できるScala.jsを使ってみましょう。 サンプルです。パッケージやオブジェクトが使えます。普通にScalaが記述できます。コンパイルを実行してJavaScriptファイルを生成します。 ソースマップに対応しており、コンソールからScalaのソースに飛ぶことができます。 WebとあってDOMの操作ももちろんできます。 入力を受け取って処理も行えます。 引数として入力内容を受け取って処理を行うこともできます。 jQueryとの連携もできます。 jQueryのイベントを呼び出した処理も行えま

    WebフロントをScalaで開発·Scala.js MOONGIFT
    manaten
    manaten 2013/06/26
  • あっぱれ。WebブラウザベースのIRCクライアント·WebIRC MOONGIFT

    IRCはインターネット上はもちろん、社内の情報交換に利用されているケースも多い。文字だけの軽快な動作で言葉が交わせるので、とても便利だ。最近ではTwitterを利用するケースも多いが、密な意見交換をする上ではIRCに敵うものはない。 まるでローカルアプリケーションのようなインタフェース そんなIRCではあるが、いつ何時も手放せないという方は専用アプリケーションよりもブラウザベースの方が便利かも知れない。それを実現するのがWebIRCだ。 今回紹介するオープンソース・ソフトウェアはWebIRC、Webブラウザ向けのIRCクライアントだ。 WebIRCはSinatraで作られたWebアプリケーションで、かなりレベルの高いIRCクライアントになっている。AjaxやJSONを使うことで、発言の自動的な反映も行われる。しかもインタフェースが洗練されていて、まるでローカルアプリケーションのようになって

    あっぱれ。WebブラウザベースのIRCクライアント·WebIRC MOONGIFT
    manaten
    manaten 2013/02/10
  • こんな手が…。Dropbox上で動的システムを動かす「Drapache」 - MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ

    DrapacheはDropbox内のファイルを読み込んで動的に動かすWebサーバです。 DropboxではPublicに入れたファイルをHTTPを通じて読み込めるようにしています。この機能を使って静的なWebサイトを提供している人もいます。しかしそれで十分ではありません。時代は動的システム、Dropbox内のファイルを動的システムに対応させるソフトウェアがDrapacheです。 まずドメインを取ります。 次にDropboxをコネクトします。 接続を許可します。 完了です。そうするとアプリフォルダの中にDrapacheフォルダができあがります。 ファイル構成はこんな感じです。 サンプルのスクリプトです。確かに動的ファイルが動いています。 動的です。もちろん修正すれば若干のタイムラグはあれど反映されます。 Drapacheの仕組みとしては登録したユーザのデータを読み込み、DrapacheがWe

    こんな手が…。Dropbox上で動的システムを動かす「Drapache」 - MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ
    manaten
    manaten 2012/06/09
    自鯖でDropbox動かしてそのままapacheで公開ってのは考えたことある
  • JavaScriptに便利なメソッドを盛り込んだライブラリ·mofmof.js MOONGIFT

    mofmof.jsはJavaScriptを積極的に拡張したライブラリで、Number/Array/Stringに便利なメソッドを追加しています。 JavaScriptは今やWebだけでなく、様々な環境で使われるようになっています。そこで基礎になりえるライブラリとして紹介したいのがmofmof.jsです。かゆい所に手が届く、便利なメソッドがたくさん追加されています。 コード例です。コピーメソッド。 日付周りの拡張も多いです。 Hashを取り扱うメソッドも多数用意されています。 二つのHashをミックスします。 Hashからキーと値を取り出します。 Hashのキーだけを抽出します。 mapメソッドです。 実行するたびにインクリメントされるユニークな値を返します。1秒間に100万回実行したとしても285年間ユニークであり続けます。 一気に配列を生成します。 文字列を置換しつつ生成します。 検索メ

  • 社内でも立てられるGitHubクローン·GitLab MOONGIFT

    GitLabRuby/Ruby on Railsで作られたGitHubクローンです。 GitHubは有料でプライベートリポジトリが持てますが、それでもセキュリティ上の理由でリポジトリを外だしできないケースはあるかと思います。そんなときに使ってみたいのがGitLabGitHubクローンです。 ログイン必須になります。 ログインした後の画面です。登録済のプロジェクトが一覧表示されます。 一つのプロジェクトを閲覧しています。ソースツリーが出ます。ソースツリーは右へ右へスライドして表示されます。GitHubに似ています。 ソースコードハイライターも内蔵されています。rawでファイルをダウンロードできます。 タグやブランチを切り替えることもできます。 コミット履歴一覧です。 コミット詳細ではDiffが確認できます。 コミットに対するコメントも確認できます。 チーム設定です。複数人でのコラボレーシ

    manaten
    manaten 2011/11/01
    おおいいなー
  • Gitを使って誰でもDropboxを作れる·RubyDrop MOONGIFT

    RubyDropはRuby製のオープンソース・ソフトウェア。個人的にDropboxはとても便利に使っている。これなしの生活は考えられないくらい便利だ。有料であれば50GBまで使えるが、無料版の2GBでは物足りないと感じる人も多いだろう。だがお金は払いたくないという人もいるだろう。 サーバ起動中 そこで考えたいのが自分だけのDropbox構築だ。重要なのは自動的に同期されるシステムであること、バージョン管理されること、複数のコンピュータ間でデータが同じ状態に保てることだろう。それらを実現するのがRubyDropだ。 RubyDropはRuby1.9系で動作するソフトウェアだ。簡単に言えば、特定のフォルダに関してRubyDropが監視を行う。そして変更があると内容をリモートのGitリポジトリにアップデートする。Gitリポジトリ側で変更があれば、Pullする仕組みだ。 自動的に同期されている G

  • GoogleドキュメントでLaTeXを書く·LaTeX Lab MOONGIFT

    LaTeX LabはJava製/Google App Engine用のオープンソース・ソフトウェア。MS WordやPagesといったワードプロセッサも良いが、より細かく自分で設定をしたいためにLaTeXを使う人は未だに多い。計算式を埋め込んだり、多彩なフォーマットに変換したりする時にもLaTeXをベースにすると便利だ。 GoogleドキュメントがLaTeXエディターに 時代はWebアプリケーションになり、LaTeXを使う人は少なくなってきている。だがGoogleドキュメントは見捨てない。Web APIを使えばGoogleドキュメントをLaTeXエディターにすることができる。それがLaTeX Labだ。 LaTeX LabはGoogleアカウントを使って認証を行う。Googleドキュメントをベースに、ツールバーを追加してLaTeX文書を編集できるようになっている。数式の埋め込みもツールバー

    GoogleドキュメントでLaTeXを書く·LaTeX Lab MOONGIFT
  • Windows/MS Officeのシリアル番号を紛失したら·The Magical Jelly Bean Keyfinder MOONGIFT

    The Magical Jelly Bean KeyfinderはWindows用のオープンソース・ソフトウェア。WindowsやOfficeを再インストールしようと思った時に必要になるのがライセンスキーだ。購入時のケースにシールで書かれているが、常に手元にある訳ではないので探しても見つからないことがある。とても不便な思いをしたことがある人も多いだろう。 Windowsのライセンスキーを忘れた時に 企業であれば一つのライセンスキーで運用することもできるが個人では難しい。そこで使いたいのがThe Magical Jelly Bean Keyfinderだ。このソフトウェアはインストールされているWindowsやOfficeのライセンスキーを表示してくれるソフトウェアなのだ。 対応しているのはWindows 95、98、ME、2000、XP、Vista、Server 2003、Server 2

    Windows/MS Officeのシリアル番号を紛失したら·The Magical Jelly Bean Keyfinder MOONGIFT
    manaten
    manaten 2009/11/03
    そもそもソフトをインストールしたいって時に該当ソフトが別にインストールされてるって状況がモノによっては規約的にアウトなような。規約しっかり全部読んだことなんてないけど
  • Python開発をはじめたいWindows開発者は·Portable Python MOONGIFT

    Portable PythonWindows向けのオープンソース・ソフトウェア。Pythonアメリカでのシェアが高いプログラミング言語だ。だがなぜか日ではいまいちシェアが低い。とはいえGoogle App Engineのような環境やDjangoのようなフレームワークも登場し、開発をプッシュする環境が整いつつある。 専用のプログラミング環境付き では実際にPython開発をはじめようと思ったら、何から準備すれば良いだろうか。もちろんまずはプログラミング実行環境のインストールだ。Windowsユーザの方はPortable Pythonを使えば一番早い。ポータブルで使えるPython環境が手に入るのだ。 Portable Pythonはインストーラーとして提供されるソフトウェアで、USBメモリなどにインストールする。もちろんHDDへのインストールも可能だ。Python2.5、2.6、3.0

    Python開発をはじめたいWindows開発者は·Portable Python MOONGIFT
    manaten
    manaten 2009/10/11
    持ち歩けるのは出先で簡単なプログラム作りたいときに便利なのかも。ただし僕はPythonを書けない
  • ソースコードの色づけを行う·Google Code Prettify MOONGIFT

    ブログや開発者向けのWebサービスなどで、ソースコードのハイライトを行うケースはよくある。言語があらかじめ決まっている場合は良いが、言語がよくわからない場合や、JavaScriptHTMLのように埋め込みで複数の言語が重なる場合もある。 各種言語に対応したハイライター そのような、特定の言語に依らずにソースコードをハイライト化したい場合に便利なのがこのライブラリだ。 今回紹介するオープンソース・ソフトウェアはGoogle Code Prettify、JavaScriptによるソースコードハイライターだ。 Google Code Prettifyの使い方は簡単だ。prettify.jsとprettify.cssを読み込んで、<pre class="prettyprint">または<code class="prettyprint">タグの中にコードを書き込めば良い。後はprettyPrint

    ソースコードの色づけを行う·Google Code Prettify MOONGIFT
  • MOONGIFT: » 必見!怖くなるくらい優秀なCMS「concrete5」:オープンソースを毎日紹介

    これまで多数のCMSを見てきたが、ここまで完成度が高いと言えるものに出会ったことはなかった…そう言えるくらい凄い。このどきどき感はDekiWikiに触れた時に感じたものに近い。 見たまま編集できるCMS CMSと言えば、ユーザ画面と管理画面に分かれていて、管理画面はモジュールやテーマの設定、各項目の並びを指定するのが通常だ。実際の出力結果はシステム任せで、その点が柔軟性に欠ける点でもあった。 しかしこれは違う。見たまま編集でき、さらに高い柔軟性を維持している。 今回紹介するオープンソース・ソフトウェアはconcrete5、デザイン、管理、コンテンツ作成全てが高度なCMSだ。 相当個人的な感情が入ってしまっているのは、同じようなシステムを構築する予定があったからだ。だがconcrete5は完成度も高く、多少の改造さえ施せば十分な気がする。やはり下手に開発コストをかけるよりもオープンソースで探

    MOONGIFT: » 必見!怖くなるくらい優秀なCMS「concrete5」:オープンソースを毎日紹介
    manaten
    manaten 2008/11/09
  • MOONGIFT: » Java製のクローリングシステム「InfoCrawler」:オープンソースを毎日紹介

    Webサービスを作る上で、外部のデータを取得して何かしたいといったことは良くある。いや、外部に限ったものではない。ローカルのデータであっても取得して、それを検索したいという要望は良くあるものだ。 ユーザ側の検索画面 そうした時にクローラーを自作したりすると思うのだが、robots.txtの解釈や効率的なクローリング法を習得するのは大変なことだ。そこで試してみたいのがこれだ。 今回紹介するオープンソース・ソフトウェアはInfoCrawler、Java製のWebクローラーだ。 InfoCrawlerは設定項目も数多く、クローリングシステムとして優秀なものになると思われる。複数サーバ設置して分散化もできるようだ。HTMLや画像、各種バイナリ等ファイル種別を指定してクローリングを行うか否かを指定できる。 インデックスするファイルを指定する画面 認証が必要なサーバにも対応し、言語によってフィルタリン

    MOONGIFT: » Java製のクローリングシステム「InfoCrawler」:オープンソースを毎日紹介
  • 1