並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 11 件 / 11件

新着順 人気順

monorepoの検索結果1 - 11 件 / 11件

  • TypeScriptのモノレポ構成を考える

    はじめにlink あまりモノレポの構成について語られている記事が多くないなと感じたので、現時点で自分が考えている設計をまとめてみる。 以前にTwitterでディレクトリ構成と内容については言及したが、実際に利用する技術についてはあまり触れなかったので改めて検証してみた。 https://twitter.com/koh110/status/1617510034266808322 クライアントサイドとサーバーサイドのコード共有については下記の記事がよくまとまっていた。 https://capelski.medium.com/effective-code-sharing-in-typescript-monorepos-475f9600f6b4 上記の記事の構成も参考にしつつ、自分の考えも加えて検証していく。 相対パスを利用する方法 npmのローカルパス指定(file:xx)を利用する方法 シンボ

      TypeScriptのモノレポ構成を考える
    • CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップか

      Secretlint v7でCommonJS からES Modulesへの移行を行いました。 Secretlint v7.0.0をリリースしました。Pure ESMへの書き直し この記事では、CommonJS(CJS)からES Modules(ESM)への移行を行った経緯と、移行する方法について紹介します。 CJSからESMへの移行は、率直に言えば単調な作業で、メリットが見えにくい作業です。 しかし、将来的にCJSよりもESMが主流になることは間違いないので、移行することは必要です。 移行の作業は、移行方法が決まれば大部分は機械的な書き換えが可能です。 では、実際にどうやって移行したのかを紹介します。 ESMへの移行の影響は依存元へと連鎖する Secretlintのリポジトリはmonorepoになっていて、だいたい40コぐらいのパッケージが含まれています。 そしてパッケージ間で依存関係があ

        CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップか
      • メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング

        こんにちは。メルカリ ハロのSoftware Engineer (Engineering Head)の@napoliです。連載:Mercari Hallo, world! -メルカリ ハロ 開発の裏側-の2回目を担当させていただきます。 2024年3月上旬にメルカリ ハロという新しいサービスが公開されました。メルカリ ハロは好きな時間に最短1時間から働ける「空き時間おしごとアプリ」です。 この記事ではメルカリ ハロを作るにあたり、どういった技術スタックやアーキテクチャを選定したのか、さらにその背景と意思決定をご紹介したいと思います。 この記事で得られること メルカリ ハロで採用されている技術スタックやアーキテクチャの全体像 その意思決定の理由とプロセス これから新規サービスを立ち上げるうえでのヒント 主な技術スタック メルカリ ハロで利用されている主な技術スタックは以下のとおりです。 バッ

          メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング
        • Live types in a TypeScript monorepo

          EDIT: A previous version of this post recommended publishConfig, operating under the mistaken belief that it could be used to override "exports" during npm publish. As it turns out, npm only uses "publishConfig" to override certain .npmrc fields like registry and tag, whereas pnpm has expanded its use to override package metadata like "main", "types", and "exports". There are a number of reasons y

            Live types in a TypeScript monorepo
          • モノレポにおけるback/front間のPrismaの型共有の方法

            詳しい方いたら教えてください。めっちゃ欲しい情報ですん。 別にモノレポでなくてもいいんですが、backend/frontendをTSで開発されてる場合Prisma入れてる気がするのですがそういう時の型共有の方法、ggってもあまり出てこない気がする。 Prisma とは Node.jsのORMです。かなり使いやすくて気に入ってます。 スターもたくさんついてますね。 お金もたくさん調達できてるみたいでいい感じです。 Prismaの型の生成 参考: Set up Prisma 上記ページをもとにサクッとinstallすると /prisma に schema.prismaというファイルが生成されます。そのファイルに、例えばこんな感じでスキーマを定義してみます。 // ユーザー model User { id String @id @default(cuid()) slug String @uniq

              モノレポにおけるback/front間のPrismaの型共有の方法
            • GitHub - teableio/teable: ✨ A Super fast, Real-time, Professional, Developer friendly, No code database

              All you want is here Cell Editing: Directly click and edit content within cells. Formula Support: Input mathematical and logical formulas to auto-calculate values. Data Sorting and Filtering: Sort data based on a column or multiple columns; use filters to view specific rows of data. Aggregation Function: Automatically summarize statistics for each column, providing instant calculations like sum, a

                GitHub - teableio/teable: ✨ A Super fast, Real-time, Professional, Developer friendly, No code database
              • monorepo で開発時にパッケージの変更を build なしで他のパッケージに反映する方法

                { "name": "lib-a", "version": "0.0.0", "type": "module", "main": "dist/index.js", "scripts": { "build": "rm -rf dist && tsc" } } この場合、lib-a の src/index.ts を変更だけしても lib-b には反映されません。なぜなら lib-b は lib-a の dist/index.js を参照しているため、build を実行して dist ディレクトリの中を更新する必要があるからです。 またこのときに tsserver の機能を使って lib-b から lib-a の参照にジャンプしても src/index.ts に飛ばないという問題点もあります。 解決策 問題の原因は依存元の lib-a の main に build によって生成されるファイルへの

                  monorepo で開発時にパッケージの変更を build なしで他のパッケージに反映する方法
                • npm workspacesで、TSファイルを共通モジュールとして使い回す | Memory ice cubes

                  ということをやりたくて、こうやったらできたという覚書。 やりたいこと こういうモノレポ構成とする。 - package.json - package-lock.json - packages - shared - app1 - app2 で、app1にあるコードベースを@myapp/app1とした場合、@myapp/sharedに置いたTSファイルを、そのままモジュールとして利用したいとする。 import { foo } from "@myapp/shared"; import { bar } from "@myapp/shared/bar"; // This is @myapp/app1 or @myapp/app2 code @myapp/app1と@myapp/app2は、それぞれ独自のコードベースになってて、それぞれtscではなくviteやesbuildなどのバンドラーを使う前提

                    npm workspacesで、TSファイルを共通モジュールとして使い回す | Memory ice cubes
                  • Announcing Pages support for monorepos, wrangler.toml, database integrations and more!

                    Announcing Pages support for monorepos, wrangler.toml, database integrations and more!04/04/2024 Pages launched in 2021 with the goal of empowering developers to go seamlessly from idea to production. With built-in CI/CD, Preview Deployments, integration with GitHub and GitLab, and support for all the most popular JavaScript frameworks, Pages lets you build and deploy both static and full-stack ap

                      Announcing Pages support for monorepos, wrangler.toml, database integrations and more!
                    • Turborepo 2.0

                      Turborepo 2.0 improves the developer experience of JavaScript and TypeScript repositories, with features including: New terminal UI: Interactive tasks and clearer logs Watch Mode: Dependency-aware task watcher for any tooling in your repository All-new documentation: Core monorepo concepts, refreshed API reference, and ecosystem tooling guides Licensing and maintenance updates: Upgraded to MIT lic

                        Turborepo 2.0
                      • From many to one: Moving our JavaScript code into a monorepo | Aha! software

                        Aha! Develop is for healthy enterprise development teams — that use scrum, kanban, and SAFe frameworks Learn more Do we need a monorepo? When I first joined Aha!, I was surprised by how well-structured the engineering onboarding program was. I spent several weeks getting to know all the teams and learning the pieces of our system. What I didn't realize at the time was these onboarding conversation

                        1