並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 7344件

新着順 人気順

npmの検索結果241 - 280 件 / 7344件

  • Introducing WebContainers: Run Node.js natively in your browser

    Introducing WebContainers: Run Node.js natively in your browser Update: Since the publication of this blog post in May 2021, WebContainers became stable and available on Firefox but most importantly, we released a WebContainer API for you all to enjoy! A few years ago we realized that the web was heading towards a key inflection point. The advent of WebAssembly and new capabilities APIs made it se

      Introducing WebContainers: Run Node.js natively in your browser
    • 新規サービスのバックエンド開発で3ヶ月経ったので、試した技術や取り組みをまとめてみた

      こんにちは、AIShift バックエンドエンジニアの石井(@sugar235711)です。 AIShiftでは去年の11月からAI Worker[1]という新しいサービスの開発が始まりました。(以下AI Worker) 本格的に開発が始まり3ヶ月弱経ったので、その間に試してきた技術やチームの取り組みについてまとめてみたいと思います。 はじめに この記事では、AI Workerのおおまかな概要・設計を説明し、それらのバックエンドを実現する上でどのような技術を試してきたのか、技術以外でのチームの取り組みについてまとめます。 少し分量が多いので、ライブラリについての情報を求めている方は、目次から気になる部分を読んでいただければと思います。 何を作っているのか ざっくりまとめると、Microsoft Teams/Web上で動くAIを活用した業務改善プラットフォームを作成しています。 GPTとRAG

        新規サービスのバックエンド開発で3ヶ月経ったので、試した技術や取り組みをまとめてみた
      • 大規模チームの中でフロントエンドを立ち上げて2ヶ月経ったのでまとめる

        とある大規模開発プロジェクトの中で WebView 用のフロントエンドシステム開発を立ち上げて2ヶ月経ちました。Android, iOS専任のエンジニアがいないため、外部協力者の指導のもと、モバイルアプリの画面を WebView で作るためです。 ある程度その営みについて見えてきたものがあるので記事にまとめることにしました。 プロジェクト参加人数は30名以上 プロジェクト自体は4ヶ月前から動いてる このプロジェクトへのフロントエンドチームの参加は1月から 現在 WebView とモバイル・バックエンドなどの結合試験をはじめている 背景 去年12月いまの会社にテックリードとして入社し、前述とは別のプロジェクトでフロントエンドチーム立ち上げを行っていました。同タイミングで、いまの会社に誘ってくれた飲み仲間もテックリード・チームリーダーとして入社しています。フロントエンドチームはこの2名がプロパ

          大規模チームの中でフロントエンドを立ち上げて2ヶ月経ったのでまとめる
        • Denoの登場でNode.jsの時代は終わるのか? - Qiita

          Deno ver 1.0 5月13日、Deno v1.0の正式リリースが決定しました。 少し勉強してみましょう。 ↑ かわいい Denoってなに? DenoはNode.jsの製作者であるRyan Dahlによって作られました、新しいJS/TSランタイムです Denoはdefaultで安全です(許可なしではファイル・ネットワーク・環境にアクセスできません) DenoはTypeScriptがビルトインで入ってます 外部パッケージはurlでインポートできます(Goみたいに) ディーノって読むらしい(デノではない) Denoが作られた背景 一年前くらいにこの動画を見たことを思い出しました。 Node.jsの作者であるRyan Dahlが、Node.jsを開発した当時の仕様を後悔する旨の動画です。 https://www.youtube.com/watch?v=M3BM9TB-8yA&t=1319s

            Denoの登場でNode.jsの時代は終わるのか? - Qiita
          • Modern web apps without JavaScript bundling or transpiling

            August 12, 2021 Modern web apps without JavaScript bundling or transpiling I didn't much care for vanilla JavaScript prior to ES6. Through all of the 2000s, I chased different approaches to avoid writing too much of it. First there was RJS (Ruby-to-JavaScript). Then there was CoffeeScript. Both transpiling approaches that turned more enjoyable-to-write source code into the kind of JavaScript that

              Modern web apps without JavaScript bundling or transpiling
            • GitHub Actions now supports CI/CD, free for public repositories

              CompanyProductGitHub Actions now supports CI/CD, free for public repositoriesSince we introduced GitHub Actions last year, the response has been phenomenal, and developers have created thousands of inspired workflows. But we’ve also heard clear feedback from almost everyone: you want CI/CD! And that’s what we’re announcing today. GitHub Actions is an API for cause and effect on GitHub: orchestrate

                GitHub Actions now supports CI/CD, free for public repositories
              • Goで軽量なデスクトップアプリ作成

                Lorca+SvelteKitでやってみる! https://github.com/zserge/lorca https://github.com/sveltejs/kit あらかじめ必要なもの go(version 1.17.2以降) nodejs(16.9.0以降),npm(7.21.1以降) Chrome/Chromium/Edgeのいずれか プロジェクトの開始 mkdir sample-gui cd sample-gui go mod init sample-gui npm init svelte@next frontend // Choice "Svelte app template" is "Skelton Project". // Choice "Use TypeScript" is No. // Choice "ESLint" is No. // Choice "Prett

                  Goで軽量なデスクトップアプリ作成
                • WebContainer API is here.

                  In 2021 we announced WebContainers, a novel WebAssembly-based operating system which enables Node.js to run entirely inside the browser. Over the last two years, millions of developers have used WebContainers each month as it powers, among others, the StackBlitz editor. Today we are thrilled to release the WebContainer API for public use and we invite the entire JavaScript and Node.js community to

                    WebContainer API is here.
                  • GitHubのリリースノートを自動化する仕組み

                    GitHub のAutomatically generated release notesを使ってリリースノートの内容を PR に基づいて自動生成するフローを作りました。 今までは、コミットメッセージのルールであるConventional Commitsとconventional-github-releaserを使って、コミットからリリースノートを自動生成していました。 他の人の PR でも、squah merge でコミットメッセージを書き換えることで、リリースノートに反映されるようにしていました。 ただ GitHub に仕組みは違うけどほぼ似たことをするAutomatically generated release notesという機能が実装されているので、これをベースに移行しようと思って、そのワークフローを作っていました。 リリースノート自動生成テクニック - mizdra’s bl

                      GitHubのリリースノートを自動化する仕組み
                    • Cloudflare Workers それは Frontend / Node.js が CDN Edge Side まで拡張されるもの

                      最近は Cloudflare Workers が熱くて、週末はずっとその調査しています。この記事はそのまとめです。 注意点として、手元でいろいろなパターンで動かして試してはいますが、プロダクション環境で運用したわけではないです。それを踏まえた上でお読みください。 特に断りが無い限り、引用文は DeepL で翻訳したものです。 Cloudflare Workers とはなにか Cloudflare Workers | サーバーレスコンピューティング | Cloudflare 一言でいうなら 「ServiceWorker の API が CDN Edge 上で動く JavaScript 処理系」 です。 Technology Radar では、まだ ASSESS(調査) フェーズという扱いです。 Cloudflare Workers | Technology Radar | ThoughtWo

                        Cloudflare Workers それは Frontend / Node.js が CDN Edge Side まで拡張されるもの
                      • Node.jsのバージョン管理にVoltaを推したい

                        Volta とは Voltaとは、JavaScript ツールマネージャーです。 タイトルでは Node.js のバージョン管理としていますが、 npm・yarn のバージョン管理も行うことができます。 公式サイトでは、「The Hassle-Free JavaScript Tool Manager(手間のかからない JavaScript ツールマネージャー)」と紹介されています。 チームの Node.js のバージョン管理を Volta に統一したところ非常に DX が上がり、Volta の恩恵を感じています。 この記事では、開発者の Volta 人口を増やすべく Volta の紹介と使用方法について解説していきたいと思います。 なかなか詳しく解説している日本語のソースはないので、公式ドキュメントを読んで適宜和訳しています。 公式ドキュメントを読むのがめんどくさいという人に読んでいただい

                          Node.jsのバージョン管理にVoltaを推したい
                        • GitHubのトレンドで振り返る2021年のJavaScript/TypeScript

                          今年も GitHub のトレンドで 2021 年の JavaScript/TypeScript を振り返ります。去年の記事はこちらです。 — GitHub のトレンドで振り返る 2020 年の JavaScript | WEB EGG 集計方法 GitHub トレンドは過去の履歴を公式に提供していないため、非公式に集計されたデータを利用しています。 データソースはlarsbijl/trending_archiveを使用 去年はxiaobaiha/github-trending-historyを利用したが今年のデータは無かったので変更 日ごとにまとめた markdown になっており、remark で AST→ データ化しました 集計期間は 2021/01/01 から 2021/12/15 まで 対象言語はJavaScriptとTypeScriptのみ 集計後のデータはこちらのスプレッドシー

                            GitHubのトレンドで振り返る2021年のJavaScript/TypeScript
                          • プログラマなんて飯を食べれればいい派にとって「高1の途中以降の数学は要らない」と思う|euroGOGO

                            フォローよろです (この方がそうかわからないけど)Rust界隈の人の発言が結構、プログラミングスクール界隈の人と水と油みたいになっているきがして、気になる。 ===(追記)=== とおもって書いてたら数学は要らない派の人がちょっと不味いことをいってたので。。https://techgym.jp/colmn/mingra38/私はできれば高1の途中ぐらいまでの数学はいると思います。不要なのは、東大目指して大量に「二次関数」の問題を大量に取り組むみたいな数学のことを指し示します。学習指導要領に沿っていうと中2で数学を辞めるという感じだとそもそも、頭をつかってプログラミングに向いてなさそうです。 ===(追記)=== なんだかゴール設定が違うのが理由かもしれないが、一応両方の心が分かる人だと思うし、プログラミングスクール界隈の方に肩入れしているので、Rust界隈の人のエッジの効いた発言に対しては

                              プログラマなんて飯を食べれればいい派にとって「高1の途中以降の数学は要らない」と思う|euroGOGO
                            • GitHub、コード提供の全ユーザーに2要素認証(2FA)を義務付けへ 2023年末までに

                              同氏によると、現在GitHubで2FAを使っているのは全アクティブユーザーの約16.5%のみ。傘下のnpmにいたっては、わずか6.44%のみという。 npmは2月、上位100のライブラリのメンテナに2FAを義務付けた。5月末までに上位500に拡大する計画だ。 関連記事 「ロシアをGitHubから切り離して」の意見に公式が返答 「私たちのビジョンは、全ての開発者のホームになること」 「GitHubからロシアを切り離して」──ロシアのウクライナ侵攻を受けて、このような件名の投稿がGitHub上に掲載された。さまざまな物議を醸したが、GitHubは「私たちのビジョンは、どこに住んでいても、全ての開発者のホームになることだ」と返答をした。 GitHub傘下のnpm、上位100のパッケージメンテナは2FA必須に GitHub傘下のパッケージリポジトリnpmは、上位100のライブラリのメンテナは2要素

                                GitHub、コード提供の全ユーザーに2要素認証(2FA)を義務付けへ 2023年末までに
                              • 自堕落な技術者の日記 : jsrsasignの寄付金を募ることにしてみました(やりがいって何だっけ?) - livedoor Blog(ブログ)

                                私はjsrsasignというJavaScriptのオープンソース暗号、PKIライブラリを個人的な趣味で開発し公開しています。ところが最近、npmパッケージのダウンロードが月間60~70万件と、異常にユーザーも増え、製品でも使われ始め、ちょっと厄介なことになっており、いろいろ悩んだ挙げ句、これが正解なのかもわかりませんが、ライブラリの維持のために寄付金を募ることにした次第です。今日は、心の吐露をつらつら書いていくことにします。 jsrsasignとは 2010年ごろ、スタンフォードの学生さんであるTom Wooさんという人のJavaScriptでRSA暗号化できるコードを見つけ、自分はPKIや電子署名を専門にしていたので「JavaScriptでRSA署名できたら面白いな」と思い、2010年6月に、ほんのRSA署名単機能のライブラリとして公開したのが jsrsasign です。当時のはしゃぎっ

                                • React Server Componentsの仕組み:詳細ガイド | POSTD

                                  React Server Components(RSC)は、ページの読み込みパフォーマンスやバンドルサイズのほか、Reactアプリケーションの書き方に近い将来大きな影響を与えることになる、素晴らしい新機能です。 Plasmicでは、Reactのビジュアルビルダーを開発しており、Reactのパフォーマンスには大きな関心を持もっています。 当社のクライアントの多くは、Plasmicを使用して高いパフォーマンスが求められるマーケティングサイトやECサイトを構築しています。 したがって、RSCはまだReact 18の初期実験機能ですが、Plasmicではその仕組みを詳しく調べています。 このブログ記事では、これまでに分かったことを紹介したいと思います。 Plasmicのメンバーによるツイートまとめもご覧ください。 React Server Componentsとは何か サーバサイドレンダリングとの

                                    React Server Componentsの仕組み:詳細ガイド | POSTD
                                  • ブログをAstro に移行しました - As a Futurist...

                                    式年遷宮の様な感じですが、数年おきにブログを作り直してます(前回)。今回は Gatsby でデザインした UI をほぼそのままに、フレームワークを Astro に移行しました。静的サイトの作成では Astro の開発者体験が最高に優れているので、2 年間ほぼ塩漬けにしてしまっていた Gatsby のコードを無事に移行できてよかったです。 Astro とは? Astro は 一言で言うと、Better HTML です。Astro というフォーマットでサイトが記述できるのですが、普通の(素の)HTML も Astro としてそのまま使えます。厳密には違いますが、HTML のスーパーセットみたいな感じです。その HTML の要素群を component としてまとめることで関心を分離できて(この辺は Web Components でも実現できます)、必要に応じてビルド時にロジックも走らせることが

                                      ブログをAstro に移行しました - As a Futurist...
                                    • 【2024年】ITエンジニア本大賞まとめ

                                      アジャイルプラクティスガイドブック チームで成果を出すための開発技術の実践知 チーム・組織にプラクティスを導入し、根付かせるために! 116の手法を一冊にまとめた“実践”の手引き チームでのアジャイル開発には、開発技術やツールなどの「技術プラクティス」の活用が重要です。 プラクティスはそれぞれの目的や役割を意識することで効果を発揮します。しかし、目まぐるしく状況が変化する開発では、当初の目的を忘れて、プラクティスに取り組むこと自体が目的化してしまうチームも少なくありません。 本書は、チーム・組織でアジャイル開発に取り組んできた著者が、プラクティスの効果的な選択・活用のしかたについて、自らの実践経験に基づいてまとめたガイドブックです。 架空の開発現場を舞台にしたマンガとともに、チーム開発の様々なシーンで役立てられるプラクティスを、幅広くかつわかりやすく解説しています。開発現場に備えておけば、

                                        【2024年】ITエンジニア本大賞まとめ
                                      • markdownlintで設計書の品質を高める | フューチャー技術ブログ

                                        はじめにフューチャー技術ブログのリレー形式の連載である、春の入門祭り2023の1日目です。TIG真野です。 ここ数年、Markdownで設計書をチームで書き、GitHub(GitLab)上でレビューするフローを採用しています。なるべくテキストベースで設計開発フローを統一するため、私の所属するチームでは以下のようなツールを採用しています。 シーケンス図、業務フロー図 Markdown中にPlantUMLで記載 参照はGitHub上からも見れるように、pegmatite を利用 システム構成図など画像系 Diagrams.net(draw.io)で作成し、.drawio.png の拡張子でMarkdownから参照 これだけは目視で差分チェックとなる Web API定義 OpenAPI SpecのYAMLファイル 参照はGitHub上からも見れるように、swagger-viewer を利用 ER

                                          markdownlintで設計書の品質を高める | フューチャー技術ブログ
                                        • Agoraで君だけの最強のClubhouseを作ろう

                                          Clubhouse に招待されないので自分で作ってみた、みたいな感じです。まあ別に招待してくれなくていいんですけどね、大して興味ないしそのうちオープンになるだろうしそれにほらどうせ Android 使ってるしあのぶどうは酸っぱいし[1]。 初挑戦で頑張って調べて書いてる感じなので何かあれば PR とかお願いします。 先にまとめ Clubhouse は Agora を使っているらしい Agora - Real-Time Voice and Video Engagement https://www.agora.io/en/ 無料枠は音声 10,000 分/月 (誤って『10,000 時間/月』と記載してました。分です。すみませんでした。) 公式チュートリアル:Start a Voice Call 今回作ったデモ:ginpei/try-agora 毎月 10,000 分無料とのこと。価格のページ

                                            Agoraで君だけの最強のClubhouseを作ろう
                                          • Rails 7.0でアセットパイプラインはどう変わるか | Wantedly Engineer Blog

                                            Rails 7.0ではフロントエンドサポートが刷新されます。新たなライブラリが多数導入され、選択肢が増えるため、「Rails公式のものを選べばOK」という戦略が通用しなくなります。 本稿では、Railsでフロントエンドを書くための選択肢について、その歴史と実装を踏まえて比較検討します。 結論から言うと(まだアルファ版なので今後も状況が変わる可能性はありますが、) 新規アプリケーションではSprocketsの役割は無くなりそうです。新しいライブラリとして Propshaft, importmap-rails, jsbundling-rails, cssbundling-rails が登場し、主要な選択肢として以下が提供されます。 (各ライブラリの詳細については後述します) Propshaft + importmap-railsデフォルトの選択肢。Node.jsが不要。トランスパイルを含め、複

                                              Rails 7.0でアセットパイプラインはどう変わるか | Wantedly Engineer Blog
                                            • Railsアプリの開発環境向けDockerfile + docker-compose.yml - アジャイルSEの憂鬱

                                              人に説明するときに記事あると便利なので、開発環境向けのDockerfileとdocker-compose.ymlを書いておく。 Dockerfile FROM ruby:3.0.0 WORKDIR /app # Using Node.js v14.x(LTS) RUN curl -fsSL https://deb.nodesource.com/setup_14.x | bash - # Add packages RUN apt-get update && apt-get install -y \ git \ nodejs \ vim # Add yarnpkg for assets:precompile RUN npm install -g yarn # Add Chrome RUN curl -sO https://dl.google.com/linux/direct/google-ch

                                                Railsアプリの開発環境向けDockerfile + docker-compose.yml - アジャイルSEの憂鬱
                                              • AWS×コンテナで基本的なDevSecOpsアーキテクチャをデザインしたお話 - How elegant the tech world is...!

                                                はじめに 先日、僕が担当する業務でECS/Fargate利用を前提にDevSecOpsアーキテクチャをデザインし、社内のAWS勉強会にて登壇する機会をいただきました。 本ブログでも内容をかいつまんでご紹介できればと思います。 AWSによらず、コンテナを利用されている方にとって、一つのプラクティス例としてご参考になれば幸いです。 ※コンテナ自体の説明や必要性に関する内容は省略していますm(_ _)m そもそもDevOpsとは? DevSecOpsの導入意義をお伝えするた前に、まず軽くDevOpsの意義をお伝えします。 ※とは言え、この記事をご訪問されている方にとっては「何をいまさら...」な内容かもしれませんし、ググればDevOps自体の情報はたくさん見つかりますので、重要なポイントのみ述べることにします。 DevOpsとは、一言で述べれば、開発チームと運用チームが協力してビジネス価値を高め

                                                  AWS×コンテナで基本的なDevSecOpsアーキテクチャをデザインしたお話 - How elegant the tech world is...!
                                                • S3 静的ウェブサイトにサーバーレスなお問い合わせフォームを実装してみた(Amazon SES + AWS Lambda + API Gateway) | DevelopersIO

                                                  S3 静的ウェブサイトにサーバーレスなお問い合わせフォームを実装してみた(Amazon SES + AWS Lambda + API Gateway) はじめに みんなが大好きな Amazon S3 の「静的ウェブサイトホスティング」で公開した HTML ウェブサイトに、メールフォーム付きのお問い合わせページが欲しくなるケースも多いと思います。 そこで今回は AWS のクラウドサービスをフル活用し、完全にサーバーレスで動作するメールフォームを構築してみました。 1時間ほどの作業でお問い合わせフォームを実装でき、AWS に触れることで「サーバーレス構成」の基本を理解するのにも役立ったので、備忘を兼ねて構築方法をご紹介します! 今回の構成(概略図) サーバーレスだと何が嬉しいの? おサイフに優しい メール送信のバックエンドに利用するAWSサービス(Amazon SES、Lambda、API G

                                                    S3 静的ウェブサイトにサーバーレスなお問い合わせフォームを実装してみた(Amazon SES + AWS Lambda + API Gateway) | DevelopersIO
                                                  • 真面目にOSSを公開する際にやってみたこと・意識したこと

                                                    先日初めて真面目に自分のコードを OSS として公開する機会があり、色々試行錯誤したのでまとめます。 何を公開した? Vue Word Highlighter という Vue.js のコンポーネントライブラリを公開しました。 機能はとても単純で、文字列と検索クエリを渡すと検索クエリに合致した文字をハイライトする(<mark>タグ又は任意のタグ囲む)というものです。 自分なりに良い感じに使えるコンポーネントが出来たので、せっかくならば多くの人に使ってもらいたいと思い以下で記載する諸々をやってみました。 公開までにやってみたこと 🗒 READMEをちゃんと書く OSS の顔と言ったら README なので、ひと目でちゃんとしてそうな OSS 感を出すために README は整備しました。 ロゴを作る Google Font で良さそうな書体を探し一部をハイライトしただけの単純なものですが、ラ

                                                      真面目にOSSを公開する際にやってみたこと・意識したこと
                                                    • 個人的Rails開発環境構築2024

                                                      新規でRailsプロジェクトを始める時の個人的な環境構築についてまとめる。前提とする条件等は下記。 規模: ~中規模 開発者数: 個人 利用シーン: PoC作成・スタートアップ立ち上げ・並の業務アプリ開発等 基本戦略 利用シーン的に「思い立ったらすぐアプリの開発ができる」という感じの運用がしたい。極力セットアップで悩みたくないから必要なミドルウェアなどは全部Dockerでインストールできるようにして立ち上げれば終わり、の環境を作る。その環境の中で色々とコマンドを叩いたり、rails newやrails gなどでRailsアプリを作成していく。 この辺のRailsの初期セットアップの手間を出来るだけ省きたいのでtemplateとなるリポジトリを作成し、そこからcloneしてくるだけでOKにする。 フロントエンドはReactなどを使わずをRails標準のerbとHotwireを軸に開発する。開

                                                        個人的Rails開発環境構築2024
                                                      • フロントエンドの爆速な開発サーバを実現する Vite を試してみた - SMARTCAMP Engineer Blog

                                                        こんにちは!スマートキャンプでエンジニアをしている中川です。 先日Twitterを何気なく眺めていたところ、Vue.js 生みの親の Evan You氏が何やら興味深いツイートをしているのが目に止まりました。 As I was going to bed, I had an idea about a no-bundler dev setup (using native browser ES imports), but with support for Vue SFCs **with hot reload**. Now it's almost 6AM and I have PoC working. The hot reload is so fast it's near instant.— Evan You (@youyuxi) 2020年4月20日 ...なるほど。これまでReactやVueを

                                                          フロントエンドの爆速な開発サーバを実現する Vite を試してみた - SMARTCAMP Engineer Blog
                                                        • そろそろオープンデータを無秩序に管理するのは卒業したいので📦データを管理するパッケージマネージャを開発した【ツール開発】 - Qiita

                                                          今回はdim(オープンデータパッケージマネージャ) v1.0のリリースに伴って開発したツールの紹介をしたいと思います。 オープンデータもパッケージマネージャ(apt、npm、gem、pipなど)と同じようにnpm install xxxxxのような形でオープンデータをインストールして管理すると良いのではないかという話です。 以前のバージョンに関しては以下の記事で紹介 【個人開発】パッケージマネージャーの考えを流用してオープンデータ管理ツールを作ってみた話 以前の記事を読んでいてv1.0からの変更点に関して読みたい方 dim v1.0 変更点 オープンデータを無秩序に管理するのはやめたい ソフトウェアやライブラリの管理は世の中様々な体系化された方法が確立されつつあります。ソフトウェアであればaptやbrewなど、ライブラリであれば言語ごとにnpmやgemなどが存在します。しかし、データに関し

                                                            そろそろオープンデータを無秩序に管理するのは卒業したいので📦データを管理するパッケージマネージャを開発した【ツール開発】 - Qiita
                                                          • NestJSをゼロから学ぶ - TypeORMの活用などをREST APIの実装から身に付けよう【Node.jsフレームワークの基本】|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                            このようにさまざまなデコレータが用意されていますが、今回はサンプルで利用するデコレータに絞って説明します。他のデコレータについては、NestJSの公式ドキュメントなどを参照してください。 依存性注入(DI) 依存性注入(DI、Dependency Injection)とは、クラスの依存関係を解決する仕組みです。NestJSでは、依存性注入を使ってクラスの依存関係を解決します。 クラスの依存関係とは、クラスが他のクラスに依存している関係のことです。例えば、次のようなクラスAがあったとします。このクラスは他のクラスに依存していません。@Injectable()デコレータを使って、サービスを定義します。 @Injectable() class A { constructor() {} } そして、次のようなクラスBがあったとします。このクラスは、@Inject()デコレータを使って依存性を注入し

                                                              NestJSをゼロから学ぶ - TypeORMの活用などをREST APIの実装から身に付けよう【Node.jsフレームワークの基本】|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                            • 「GitHubで大規模なマルウェア攻撃が広まっている」──海外エンジニアのツイートが話題 すでに対応中か

                                                              スティーブンさんは当初、「3万5000のリポジトリ(プロジェクトのソースコード保管庫)が感染している」としていたが、その後「GitHub上に3万5000件以上見つかったのであり、リポジトリが感染しているわけではない」と訂正している。悪意あるコードが埋め込まれているのは、正規のリポジトリから第三者がクローンしたもの。 投稿によると、暗号通貨(原文ではcrypto)やGo、Python、JavaScript、Bash、Docker、Kubernetesなどのサードパーティーライブラリのクローンリポジトリで悪意あるコードを確認しているという。悪意あるコードは、Node.jsのモジュール管理ツール「npmスクリプト」やDockerコンテナのパッケージ「Dockerイメージ」、インストールドキュメントに追加されているとしている。 続けて、スティーブンさんは「攻撃者はクローンした偽のリポジトリを正規の

                                                                「GitHubで大規模なマルウェア攻撃が広まっている」──海外エンジニアのツイートが話題 すでに対応中か
                                                              • 【Vue.js】Composition API時代の便利ライブラリ「VueUse」を使ってみた - Qiita

                                                                Vue Composition API によって Vue.js にも React Hooks のようなロジックの再利用性の高い開発体験がもたらされようとしています。 しかし、まだ「Composition API の良さをわかっていない」という方や「Composition API をうまく利用した書き方がわからない」という方も多いかと思います。 本記事では Composition API 時代の便利ライブラリ VueUse を用いた実装例や、 VueUse 自体の実装がどのようなものか紹介します。 Composition API の良さや雰囲気もキャッチアップしていただければ幸いです。 VueUse とは? VueUse は Anthony Fu さん1が中心に開発しているライブラリで、Composition API を用いた便利系関数を数多く集めたライブラリです。 例えば、ブラウザ上のマウ

                                                                  【Vue.js】Composition API時代の便利ライブラリ「VueUse」を使ってみた - Qiita
                                                                • Node.js + TypeScriptのモジュールを整理してみる

                                                                  はじめにlink 最近受けるNode.js + TypeScript環境の相談の中で、CommonJSやECMAScript Modulesのあたりで落とし穴にはまっている人が多いという事に気づいた。 Node.jsは歴史的にCommonJSとECMAScript Modules(以後ESMと表記)がどうしても入り乱れる環境にあり、これにTypeScriptのモジュールが加わると組み合わせでさらに複雑度が増すのが現状である。 説明する際に口頭より整理した文章が欲しいと思ったので記事にする。 以下のリポジトリで検証コードを管理している。 https://github.com/koh110/module_test Node.jsモジュールチェックシートlink まず最初にNode.jsにおけるCommonJSとESMの挙動について整理する。 いきなり書かれても把握できないかもしれないが、一旦こ

                                                                    Node.js + TypeScriptのモジュールを整理してみる
                                                                  • gihyo.jp編集部におけるMarkdown記法 | gihyo.jp

                                                                    本稿では、gihyo.jp編集部で利用しているMarkdownファイルの記述方法を主に解説します。 注意:gihyo.jp編集部内でのみ採用しているMarkdownの書き方をまとめた文書を、記事の体裁を取って公開したものです。なお、記事公開後に記述方法を追加・変更する可能性もあります。 Markdownとは? はじめに、筆者の把握している範囲でMarkdownについて概説しておきます。 近年は一般向けのウェブサービスやテキストエディタでも利用されてきているMarkdown。端的に言えば、テキストファイル上で文書を書くための構文です。文書の読みやすさに焦点を当てており、Markdown形式のテキストファイル(=Markdownファイル)をそのまま見れば文書とその構造が理解できるように、Markdown特有の編集記号や字下げを用いて表現します。また、MarkdownファイルをHTMLファイルに

                                                                      gihyo.jp編集部におけるMarkdown記法 | gihyo.jp
                                                                    • 【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】 - Qiita

                                                                      【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】TypeScriptフロントエンド個人開発Next.jsprisma はじめに 皆さんこんにちは、mamiなのだ! 今回はバックエンドは作らずにNextAuth.jsやprisma、microCMSなどを利用してNext.jsでECサイトを作成してみたので、その方法や手順などを公開しつつ、認証周りや大型開発案件でも採用されるstorybookなどについても解説していこうと思うのだ! フロントを勉強し始めた初学者さんや、フロントがメインではないバックエンドエンジニアの方に向けて、丁寧に解説を挟みながら書いていくので「へ〜フロントってこんな感じのことやってるんだ〜」と思ってくれたら嬉しいのだ! ちなみにこの記事は丁寧に解説しすぎて死ぬほど長くなってしまっ

                                                                        【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】 - Qiita
                                                                      • ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers

                                                                        こんにちは。ソーシャル経済メディア「NewsPicks」NewsPicks Stage.事業のエンジニアをしています、林です。 業務では Next.js / Rust / Go などを用いて、経済・ビジネス情報に特化した動画配信サービスであるNewsPicks Stage.の開発・運用を行っています。 はじめに 突然ですが、皆さんは自身のソフトウェアのライブラリアップデートは行えていますか? 皆さんはどのようにライブラリアップデートを行なっていますか? 新機能を試したくて? npm iで失敗してから頑張る? Renovate / dependabot が自動Mergeされる環境? もしくは対応担当が特定の日にまとめてMergeする運用? しかし多くの開発者は、アップデートに対して「うまくいっている」と言えないのではないでしょうか?自身も様々なプロダクトを開発してきた経験上、日々の中ではどう

                                                                          ソフトウェアエンジニアのライブラリアップデートの向き合い方 - Uzabase for Engineers
                                                                        • 結合テストを書くときはコードベースを分離している

                                                                          新規開発の設計支援や古いコードベースを甦らせて欲しいという相談をもらったときに、最初にちょろっとコードだけお手本的なコードを書いてから引き渡しているのだが、そのときに必ず結合テストを書くようにしている。 3, 4年前から僕と付き合いがある人からすると、 「「「あの sadnessOjisan がテストを書くだと!!!」」」 という感じだと思うのだが、最近はテストに思うところもあってちゃんと書いている。 そしてそのテストコードだが、基本的にはアプリケーションから分離して書いている。その話をしたい。 OGP OGP は野方ホープで海苔が分離されて出てきた時の画像だ。 アプリケーションから分離したテストとはどういうことか 最終的にはテスト対象のサーバーを Docker コンテナで固めて、そのコンテナに対して HTTP リクエストを投げてその結果や DB の中身を検証するコンテナを docker

                                                                            結合テストを書くときはコードベースを分離している
                                                                          • GitHub Actionsをローカルで実行する(nektos/act) - くらげになりたい。

                                                                            GitHub Actionsを試すときに、いちいちコミットしないといけないのがめんどくさいので、 ローカルで確認できればな〜と思い、色々調べたときの備忘録。 Dockerを立ち上げてローカルで実行できるのがあった...(*´ω`*) ・nektos/act: Run your GitHub Actions locally 🚀 使ったサンプルはこれ(*´ω`*) # ./github/workflows/build.yml # ./github/workflows/test.yml name: Act Sample on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - run: | echo "MY_ENV_VAR = ${{ env.MY_ENV_VAR }}" echo "MY_2ND_EN

                                                                              GitHub Actionsをローカルで実行する(nektos/act) - くらげになりたい。
                                                                            • 社内コードを公開せずに内部で共有する方法 - Qiita

                                                                              Read this article in English. はじめに 見つけやすく、インストールしやすいソフトウェアパッケージは、開発者にとって使いやすいです。React、Ruby on Rails、Airflow のような有名な OSS は良い事例です。しかし、社内の非公開のコードは、企業秘密として世間から隠されることが多いです。権限を持っている人のみ見ることができて、オープンソースのように npm gem や pip で簡単にインストールすることもできません。 その結果、社内のコードがうまく再利用されなくなる(あるいはできなくなる)ことがあります。各チームはそれぞれ独立したコードベースを持ち、他のチームにコードを共有したくても、満足がいく解決策を導き出すことが難しかったりします。戦略を立てないままでは、それぞれの独立したコードベースを充実させ続け「社内共通のライブラリー」が遠い夢のよう

                                                                                社内コードを公開せずに内部で共有する方法 - Qiita
                                                                              • Puppeteerで不要なCSSを消す - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                                                こんにちは。フロントエンドエキスパートチームの穴井(@pirosikick)です。福岡在住で、普段は福岡のweworkで働いています。他のメンバーは皆、東京に居てリモートで仕事をしていますが、モブでわいわい開発していますし、weworkが快適すぎて、毎日楽しいです! フロントエンドエキスパートチームでは、サイボウズの各プロダクトが抱えるWebフロントエンドの課題を解決するのが仕事の一つです。 blog.cybozu.io 最近の取り組みとして、Puppeteerで不要なCSSを消した事例を紹介します。 このブログは、6/19に福岡で開催した「Google I/O '19のWebをまとめる会」で登壇したときの内容を詳細に説明しつつ、アップデートした部分もあるので、発表見たぞ、スライド見たぞという方も見ていただけますと幸いです。 speakerdeck.com きっかけ とあるプロダクトのCS

                                                                                  Puppeteerで不要なCSSを消す - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                                                • Deno 1.0

                                                                                  Dynamic languages are useful tools. Scripting allows users to rapidly and succinctly tie together complex systems and express ideas without worrying about details like memory management or build systems. In recent years programming languages like Rust and Go have made it much easier to produce sophisticated native machine code; these projects are incredibly important developments in computer infra

                                                                                    Deno 1.0