タグ

ブックマーク / qiita.com (199)

  • RailsとReactでオンライン予約表QRnoteを作って公開した話 - Qiita

    概要 QRnoteは誰でも使えることが特徴のオンライン予約表です Rails + React + Dockerで開発し、Elastic Beanstalkで公開しています ソースをGitHubで公開していますので、記事内のライブラリの紹介とあわせてご参照ください! まず使いたい! いますぐ試したい https://qrnote.work ローカルで動かしたい https://github.com/junara/qrnote をクローン。 Dockerで開発していますので、下記のcommandでを実行して起動して下さい。 https://localhost:3000 にQRnoteが起ち上がります。 docker-compose build docker-compose run web yarn install docker-compose run web rails db:create d

    RailsとReactでオンライン予約表QRnoteを作って公開した話 - Qiita
  • JavaScriptの概念たち (前編) - Qiita

    この記事は JavaScript Advent Calendar 2018 4日目の記事です。 昨日は@sasurai_usagi3さんで「CoffeeScriptからJavaScriptに移行する」でした。栄枯盛衰を感じます。「CoffeeScript」でググろうとしたらGoogleさんが「CoffeeScript オワコン」とサジェストしてきて悲しい気持ちになりました。 明日は@todays-mitsuiさんで「Ramda とか?について」です。 はじめに 今回はGithubの33個のJavaScriptの概念という記事がかなり良記事だったので、その記事に乗っていたサイトたちを元にそれぞれの章の解説を書いてみました。 これらの概念を知らなくてもJavaScriptを書くことは多分出来ると思いますが、知っておくと何かと便利かと思います。 元サイトたちは参考文献に載せておくのでさらに詳しく

    JavaScriptの概念たち (前編) - Qiita
  • Vue.jsでAtomic Designを実践する - Qiita

    DevicebookというNuxt.jsとLaravelを使ったWebサービス個人開発しています。 最近、「うわっ、わたしのコンポーネント設計、見づらすぎ・・・?」と思いはじめたため、重い腰をあげてAtomic Designを導入しはじめました。 Atomic Deisngのメリット Atomic Designを導入すれば、コンポーネントの設計に統一感をもたらすことができて、再利用性が高まるという恩恵を受けられます。 今まではVue.jsのスタイルガイドに準拠しながら設計をしていましたが、個人開発サービスの規模感でも、そろそろ限界が見えはじめました。 コンポーネントの設計が、機能や開発時期によってバラつきがあるため、可読性が低い。 コンポーネントが他のコンポーネントやVuexと密結合になっているため、再利用しにくい。 つまり中規模段階に入るとVue.jsのスタイルガイドに限界が見え始める

    Vue.jsでAtomic Designを実践する - Qiita
  • tmuxを効率よく使って開発を爆速にする最高の設定

    リポジトリを横断しての開発 自分は普段いくつかの(主にマイクロサービス)リポジトリを横断しつつコーディングをしています。 その際に tmux + zsh + neovim を使っているのですが、 tmux (とzsh)を使って複数のリポジトリを横断する最高の設定を使っているので紹介します。 まず前提として、複数リポジトリのマイクロサービスを立ち上げるとめちゃくちゃコンソールが増えると思います。 自分はプロジェクト毎にローカルサーバで1-2個・エディタ1つ・シェルで1つ・REPLで1つくらいは平気で使います。ついでに一時的な検証をするワークスペースを作って5-7個くらいは平気でプロジェクトを横断することがあります。 これを tmux の window と pane だけで管理するのは辛いのでやめましょう。 tmux には session という便利な機能があるのでこれを使います。 簡単に説明

    tmuxを効率よく使って開発を爆速にする最高の設定
  • VimでVue.jsをある程度快適に編集する - Qiita

    スニペット neosinppet-snippetsに、Vue.js用のスニペットが含まれています。 neosnippet.vim neosnippet-snippets NERDCommenterやcaw.vimでコメントの文字列を使い分ける template、script、styleでそれぞれ挿入されるコメントの文字列を変えたいときのことです caw.vimを使用する場合は、context_filetype.vimを入れるだけで自動で判別してくれます NERDCommenterを使う場合は.vimrcに以下を追記します(READMEより) let g:ft = '' function! NERDCommenter_before() if &ft == 'vue' let g:ft = 'vue' let stack = synstack(line('.'), col('.')) if l

    VimでVue.jsをある程度快適に編集する - Qiita
  • Electronで認証付きプロキシの認証情報をユーザーに入力してもらう方法 - Qiita

    概要 Electron を使った Windows / Mac 向けのデスクトップアプリケーションをお仕事で作ってます。 そのアプリケーションを Basic 認証付きのプロキシ上で動かした際に、ユーザーに認証情報を入力してもらう実装を考えました。せっかくなので、一例として書き留めておこうと思います。参考になれば幸いです。 ※ ざっくりしたアプリケーションの構成はこんな感じです main process main.js renderer process https://○○◯.com (メイン画面) メイン画面の表示には WebView を使用せず、BrowserWindow 内で直接表示しています。 定石 login イベント Electron API の App にはlogin イベントが用意されています。 認証が必要なネットワークへの接続が行われた場合、これをキャッチすることが出来ます。

    Electronで認証付きプロキシの認証情報をユーザーに入力してもらう方法 - Qiita
  • Nuxt.jsで作った静的サイトのビルド/テスト/デプロイを自動化して、毎朝10時に更新する。

    AWSCircleCIの力を借りて、Nuxt.jsで作った静的サイトの運用をできるかぎり自動化した話です。 3ヶ月ほど前からCIのサービスを使うようになり、入門記事はたくさんあって助かったのですが、具体的にどんな感じで使っているかの情報が少なかったので記事にしました。 もしかしたら、CIの使い方が間違っているかもしれないので、そのときは優しくコメントをいただけたら嬉しいです。 できあがった流れ 毎朝10時にLambdaを起こしてデータの更新を行い、静的ファイルを再生成してからデプロイする流れになっています。 対象のサイト ざっくりAWSという、AWSの料金を日円でざっくり計算できるサイトです。 Nuxt.jsで作成したものを、静的サイトとして生成して、AWSのS3にホスティングしています。 計算に必要なAWSの価格や為替は、毎朝10時に取得したものをS3にJSONで保存し、そのJSON

    Nuxt.jsで作った静的サイトのビルド/テスト/デプロイを自動化して、毎朝10時に更新する。
  • 1週間でVue.jsをマスターしようと思った時に参考にしたサイト

    前置き(とばしてください〜) めっちゃ久しぶりに更新します。 プロフィールなども古いですがとりあえず今度そのあたりも更新しようと思っています。 簡単に今の私について。 携帯の販売→スマートフォンアプリの専門学校→Web制作会社→フリーランスフリーランスの時に仕事を受けたスタートアップの会社に就職(まだ2週間前の話) こんな感じです。 フリーランスのときは(今もまだ仕事はちょこちょこ受けてますが) 基的に私ができる仕事はなんでも受けていました。 ので、エンジニア仕事があればデザインの仕事、Botのシナリオ作成(UXライター的な)、プログラムとはかけ離れた仕事などなどもしていました。 また、ガッツリエンジニア!!という仕事はなかったので、(なぜが割とがっつり常駐していたスタートアップではメンバー半分がエンジニアだった!) 逆に、仕事で新技術学べる機会は殆ど無く… 今の自分が活躍できる領域

    1週間でVue.jsをマスターしようと思った時に参考にしたサイト
  • Vue 3.0 について Podcast 番組風に語る

    はいどーも、えー、うーねこ @unecochan です。Podcast 要素は特にありません。 [和訳] 次期 Vue (v3.0) の計画 / Plans for the Next Iteration of Vue.js - Qiita こちらの記事なんですが、翻訳したはいいけど肝心の中身について触れていなかったので、書きます。 前提として、私は Vue で好きにやっていいよって言われた場合は ↓ みたいな感じでやることが多いです。 (vue-cli の vue ui のスクリーンショットです) 趣味が出てるのは Pug, Element あたりで他は割と一般的なんじゃないでしょうか。TypeScript は新規プロジェクトなら、普通でしょ、うん。 はいそれでは記事のほう、ダラダラ見ていきましょう。 詳細 / The Details 高レベルAPIの変更 / High-Level API

    Vue 3.0 について Podcast 番組風に語る
  • vuejsで作ったSPAの速度改善方法 - Qiita

    こんにちわ。 formrunというフォームを簡単に作れてお問い合わせも出来ちゃうサービスを作ってます。 最近問い合わせ管理の機能をSPAでフルリプレイスしました。 当初は遅くてSPAにした意義がまるでなかったのですが、以下に挙げたチューニングを行う事でだいぶパフォーマンスが改善したのでアップします。 問題点 フォームの切り替え、カードの切り替えがAPIの実行などは行なっていないにも関わらず遅い。 改善結果 カード切り替え before 700ms after 150ms フォーム切り替え before 1200ms after 430ms サーバサイド API REST API N+1問題 当初はREST APIに従って一つのエンドポイントでは一つのリソースを取得するようにしていました。 ただこの作りだとリクエストのN+1が起きてしまうため極力一つのAPIのエンドポイントでは大きくデータを

    vuejsで作ったSPAの速度改善方法 - Qiita
  • Chromeをvimライクに使えるようにするvimium - Qiita

    vimiumとは vimキーバインドでGoogle Chromeを使えるようにできるプラグイン 具体的には,以下のような処理をvimキーバインドでできちゃう! ページ操作 ページのスクロール(上下) リンクのクリック ページを戻る/進む 文字列検索 タブ操作 新規タブ追加 タブの削除 タブの移動 その他の操作 ブックマーク検索 vimiumのインストール chrome web storeのvimiumのページへ行きインストールを選択する. vimiumの設定 プラグインをインストールすると,早速vimiumが使用可能になるが,デフォルトのキーマッピングをかえて使いやすくする. インストール後,検索窓の右隣に以下のようなボタンが追加されている. ボタンを押すと以下のようなメニューが表示されるので,Optionsをクリックする. すると,vimium optionsを編集できるページに移動する

    Chromeをvimライクに使えるようにするvimium - Qiita
  • Vue.js 3.0の変更点

    はじめに こちらがEvan Youさんが9月30日に書いた原文です。 https://medium.com/the-vue-point/plans-for-the-next-iteration-of-vue-js-777ffea6fabf この中から一般的な利用ユーザーにとっては把握しておかなければならない重要な変更点、破壊的かもしれない公開APIの変更点のみを抜粋します。 編集リクエストどんどん受け付けています! TL;DR render関数とスコープ付きslotの構文以外は、互換性ビルドを介して同じままにするか、2.x互換にすることができます。 Everything except render function API and scoped-slots syntax will either remain the same or can be made 2.x compatible vi

    Vue.js 3.0の変更点
  • 2018年Vue.jsとVuexを使ってFluxをしている人には必ず知っていてほしい開発やメンテナンスの際に役立つVuexのTipsとサンプルコード

    2018年Vue.jsとVuexを使ってる人には必ず知っていてほしい開発やメンテナンスの際に役立つ設計とTipsとサンプルコードFacebookfluxVue.jsVuexvue-router 初めに ※ 全てのコメントに返事しません。 ※ 記事の内容に意見がありましたら直接編集リクエストをください。 ゴール ReduxVuex、Fluxのパワーワードに負けずになんとなくではなくちゃんとFluxを理解し、実践して恩恵を受ける。 役立つVuexのTipsを身につけコード品質を向上させる。 VuexとVueRouterの落とし穴の把握。 リファクタリングの障害を減らしコードを追いやすくする。 Vuexの穴 1. Vuex提供のmap系の辛み VuexのmapActionsとか、createNamespacedHelpersめっちゃ便利ですよね。 import { createNamespac

    2018年Vue.jsとVuexを使ってFluxをしている人には必ず知っていてほしい開発やメンテナンスの際に役立つVuexのTipsとサンプルコード
  • フリーランスエンジニアの面談ってこんな感じ - Qiita

    はじめに 今回は自分が知りたかったシリーズ第3弾です。 第1弾:25歳初めてのフリーランスエンジニアの単価について 第2弾:新卒入社後、約3年半で読んできた書籍たち 第3弾:フリーランスエンジニアの面談ってこんな感じ 第4弾:新規参画した現場で1週間で意識したこと、やったこと フリーランスエンジニアではなくても、転職等ですこしは参考になるのではないのかなと思っています。 自分の数少ない経験と偏見があるのであくまで参考として見て頂ければと思います。(こんな感じで話したり、進めたりしているんだと雰囲気を感じてもらえればです。) 覚えている範囲でそのまま書いていますので、回答や内容について間違いが多いと思います。その点、ご了承下さい。 前提 25歳 男性 東京 IT業界3年目(Web経験 1年目) エージェントを利用して面談 フリーランスエンジニアとしての面談は初めて 面談準備 エージェントさん

    フリーランスエンジニアの面談ってこんな感じ - Qiita
    ram1009
    ram1009 2018/09/26
  • 「Vueコンサルが教えたくない7つの真実」を勉強してみた - Qiita

    Vueの便利なテクニック7つ Youtubeで見つけたので勉強ついでにまとめてみる。 出展 Chris Fritz さん Youtube https://www.youtube.com/watch?v=7YZ5DwlLSt8 資料(Github) https://github.com/chrisvfritz/7-secret-patterns まとめ - 動画とはバージョン違い(英語) https://www.vuemastery.com/conferences/vueconf-2018/7-secret-patterns-vue-consultants-dont-want-you-to-know-chris-fritz/ Productivity Boost - 生産性向上 1. Smarter Watcher 元のコードはこれ。生成時になにかしてアップデート時にもなにかする。よくやる。

    「Vueコンサルが教えたくない7つの真実」を勉強してみた - Qiita
  • web制作でよく使用するVuex�自作モジュール3選 - Qiita

    ここ数ヶ月、webサイトをつくときはVueまたはVuePressを使用しています。 いくつか作ってみてほぼ必ず必要になってるVuexの自作モジュールがあるので3つほどご紹介 とりあえずこの3つをVuexつかって管理して必要なコンポーネントでmapState などすると実装がシンプルになるような気がします。 とりあえずindex.js store/index.jsとかつくってとりあえず置いておく。基は用途ごとにネームスペースを切る想定。 import Vue from 'vue' import Vuex from 'Vuex' const state = { } const modules = { } const mutations = { } const actions = { } const store = new Vuex.Store({ state, modules, mutati

    web制作でよく使用するVuex�自作モジュール3選 - Qiita
  • 実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita

    9月15日(土) DNSについて追記しました。バックエンド?今はクラウドがきっと上手くやってくれるので深く考える必要は無いんですよ(知らないので書けません😔) 問題のツイート 面接の質問で「ブラウザを立ち上げてページが表示されるまでの仕組みを全て知ってる限り説明してください」ってのをやると結構Web系の知識どれだけあるか分かると思ってる — 🍛🍺 (@tan_go238) September 10, 2018 解釈 今回は「ChromeのURL欄に入力してからページが表示されるまで」をやります。ブラウザの起動云々はWeb系の話じゃないと信じてます。 1. HTTPリクエストが飛ぶ HTTP2のヘッダ圧縮技術に全て書いてありました。 (追記)下のリクエストヘッダはテキストで書かれていますが、実際にはこれをバイナリにしたものが飛んでいるとのことです。segfoさんありがとうございます!

    実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita
  • 2018年Vue.jsとVuexを使ってる人には必ず知っていてほしいドキュメントに書かれていないコンポーネントやストア、メンテナンスの際に役立つTips - Qiita

    2018年Vue.jsとVuexを使ってる人には必ず知っていてほしいドキュメントに書かれていないコンポーネントやストア、メンテナンスの際に役立つTipsTypeScriptes6DesignPatternsVue.jsVuex はじめに 私はVue.js with Vuexを使った業務で1画面30APIを叩く必要のある画面から、たったの数APIしか叩かないけれど、代わりにUIがとても機能的で複雑な画面まで設計し、構築しました。 現在は構築したシステムを保守・運用しており、その際に得られたノウハウを言語化し、共有出来たらと思います。 ※ 記事の内容に意見がありましたら直接編集リクエストをください。 ※ パフォーマンスの話はしません。 ゴール 役立つTipsを身につけコード品質を向上させる コンポーネントのバグを減らせるTips ほとんどのバグは変数から来ます。 もし全ての値が定数なら状態から

    2018年Vue.jsとVuexを使ってる人には必ず知っていてほしいドキュメントに書かれていないコンポーネントやストア、メンテナンスの際に役立つTips - Qiita
  • ECS運用のノウハウ - Qiita

    関連記事 マイクロサービスを支えるインフラアーキテクチャ (AWS Dev Day 2019登壇資料) ECSデプロイツールを公開しました ECSにおけるログの取り扱いを別ページに移動させました 設計 基方針 基盤を設計する上で次のキーワードを意識した。 Immutable infrastructure 一度構築したサーバは設定の変更を行わない Infrastructure as Code インフラの構成をコードで管理 (Terraformを採用) Serverless architecture 無駄にサーバを増やさない アプリケーションレイヤに関して言えば、Twelve Factor Appが参考になる。コンテナ技術とも親和性が高い。 ECSとBeanstalk Multi-container Dockerの違い 以前に記事を書いたので、詳しくは下記参照。 Dockerコンテナデプロイ

    ECS運用のノウハウ - Qiita
  • Vue.jsとNuxt.jsを使っていて、どっちのドキュメントを見ればいいんだ?ってなったときのために機能を整理する。

    Vue.jsとNuxt.jsを使っていて、どっちのドキュメントを見ればいいんだ?ってなったときのために機能を整理する。 開発に慣れてきたら迷うことはないと思いますが、Vue.jsをさわるのが初めてでNuxt.jsを採用した場合、どっちのドキュメントを見ればよいかわからずに、さまよってしまう事があるかもしれません(自分がそうでした)。そんなときのための、長ったらしいメモです。 この記事を書いている時点では、Vue.jsが2.5、Nuxt.jsが1.2です。 ドキュメントの歩き方 まずはガイドで概要を把握して、細かいことが気になったらAPIをあたります。 Vue.jsでの開発がはじめてであれば、格的に書き始める前に、スタイルガイドを見ておくと、手戻りが少なくなるかもしれません。 ガイド フレームワークの使い方がわかりやすく書かれています。 はじめにから順に読んでいって、大体こんなことができる

    Vue.jsとNuxt.jsを使っていて、どっちのドキュメントを見ればいいんだ?ってなったときのために機能を整理する。