Monorepo overview

February 26, 2023 ยท View on GitHub

The loopback-next repository uses lerna to manage multiple packages for LoopBack 4.

Please run the following command to update packages information after adding new one in the monorepo: npm run update-monorepo-file

PackagenpmDescription
acceptance/extension-logging-fluentd(private)Acceptance test for @loopback/logging with fluentd
acceptance/repository-cloudant(private)Acceptance tests for @loopback/repository + loopback-connector-cloudant
acceptance/repository-mongodb(private)Acceptance tests for @loopback/repository + loopback-connector-mongodb
acceptance/repository-mysql(private)Acceptance tests for @loopback/repository + loopback-connector-mysql
acceptance/repository-postgresql(private)Acceptance tests for @loopback/repository + loopback-connector-postgresql
benchmark(private)Benchmarks measuring performance of our framework.
bodyparsers/rest-msgpack@loopback/rest-msgpackBody parser to handle MessagePack requests in LoopBack 4.
docs@loopback/docsDocumentation files rendered at https://loopback.io
examples/access-control-migration@loopback/example-access-control-migrationTutorial example on how to migrate the access control example with LoopBack 4.
examples/binding-resolution@loopback/example-binding-resolutionAn example application to demonstrate binding resolution and dependency injection within a context hierarchy
examples/context@loopback/example-contextStandalone examples to illustrate features provided by @loopback/context
examples/express-composition@loopback/example-express-compositionLoopBack 4 REST API on Express
examples/file-transfer@loopback/example-file-transferExample application for file upload/download with LoopBack 4
examples/graphql@loopback/example-graphqlGraphQL Example Application
examples/greeter-extension@loopback/example-greeter-extensionAn example showing how to implement the extension point/extension pattern using LoopBack 4
examples/greeting-app@loopback/example-greeting-appAn example greeting application for LoopBack 4
examples/hello-world@loopback/example-hello-worldA simple hello-world Application using LoopBack 4
examples/lb3-application@loopback/example-lb3-applicationTutorial example on how to add existing an LB3 application to a LB4 project
examples/log-extension@loopback/example-log-extensionAn example showing how to write a complex log extension for LoopBack 4
examples/metrics-prometheus@loopback/example-metrics-prometheusAn example to illustrate metrics provided by @loopback/metrics and Prometheus
examples/multi-tenancy@loopback/example-multi-tenancyAn example to illustrate how to enable multi-tenancy with LoopBack's IoC and DI container
examples/passport-login@loopback/example-passport-loginAn example to demonstrate authentication with passport strategies
examples/rest-crud@loopback/example-rest-crudAn example showing how to use @loopback/rest-crud to define default repository and controller classes
examples/rpc-server@loopback/example-rpc-serverAn example RPC server and application to demonstrate the creation of your own custom server
examples/soap-calculator@loopback/example-soap-calculatorA tutorial demonstrating integration SOAP webservice with LoopBack 4
examples/socketio@loopback/example-socketioThis is an example for spinning up socket server.
examples/todo@loopback/example-todoTutorial example on how to build an application with LoopBack 4
examples/todo-jwt@loopback/example-todo-jwtA modified Todo tutorial how to build an application with JWT authentication and LoopBack 4
examples/todo-list@loopback/example-todo-listContinuation of the todo example using relations in LoopBack 4.
examples/validation-app@loopback/example-validation-appAn example demonstrating how to add validation in a LoopBack 4 application
examples/references-many@loopback/example-references-manyAn example of references many relation in a LoopBack 4
examples/webpack@loopback/example-webpackAn example to bundle @loopback/core using webpack
extensions/apiconnect@loopback/apiconnectAn extension for IBM API Connect
extensions/authentication-jwt@loopback/authentication-jwtExtension for the prototype of JWT authentication
extensions/authentication-passport@loopback/authentication-passportA package creating adapters between the passport module and @loopback/authentication
extensions/context-explorer@loopback/context-explorerVisualize context hierarchy, bindings, configurations, and dependencies
extensions/cron@loopback/cronSchedule tasks using cron-like syntax
extensions/graphql@loopback/graphqlLoopBack's graphql integration
extensions/health@loopback/healthAn extension exposes health check related endpoints with LoopBack 4
extensions/logging@loopback/loggingAn extension exposes logging for Winston and Fluentd with LoopBack 4
extensions/metrics@loopback/metricsAn extension exposes metrics for Prometheus with LoopBack 4
extensions/pooling@loopback/poolingResource pooling service for LoopBack 4
extensions/socketio@loopback/socketioLoopBack's WebSocket server based on socket.io
extensions/typeorm@loopback/typeormAdds support for TypeORM in LoopBack
extensions/sequelize@loopback/sequelizeAn extension that adds support for Sequelize to existing repositories.
fixtures/mock-oauth2-provider@loopback/mock-oauth2-providerAn internal application to mock the OAuth2 authorization flow login with a social app like facebook, google etc
fixtures/tsdocs-monorepo(private)A monorepo for tsdocs testing
packages/authentication@loopback/authenticationA LoopBack component for authentication support.
packages/authorization@loopback/authorizationA LoopBack component for authorization support.
packages/boot@loopback/bootA collection of Booters for LoopBack 4 Applications
packages/booter-lb3app@loopback/booter-lb3appA booter component for LoopBack 3 applications to expose their REST API via LoopBack 4
packages/build@loopback/buildA set of common scripts and default configurations to build LoopBack 4 or other TypeScript modules
packages/cli@loopback/cliYeoman generator for LoopBack 4
packages/context@loopback/contextFacilities to manage artifacts and their dependencies in your Node.js applications. The module exposes TypeScript/JavaScript APIs and decorators to register artifacts, declare dependencies, and resolve artifacts by keys. It also serves as an IoC container to support dependency injection
packages/core@loopback/coreDefine and implement core constructs such as Application and Component
packages/eslint-config@loopback/eslint-configESLint configuration for LoopBack projects
packages/express@loopback/expressIntegrate with Express and expose middleware infrastructure for sequence and interceptors
packages/filter@loopback/filterUtility typings and filters for LoopBack filters.
packages/http-caching-proxy@loopback/http-caching-proxyA caching HTTP proxy for integration tests. NOT SUITABLE FOR PRODUCTION USE!
packages/http-server@loopback/http-serverA wrapper for creating HTTP/HTTPS servers
packages/metadata@loopback/metadataUtilities to help developers implement TypeScript decorators, define/merge metadata, and inspect metadata
packages/model-api-builder@loopback/model-api-builderTypes and helpers for packages contributing Model API builders.
packages/monorepo@loopback/monorepoA set of scripts to maintain a lerna monorepo
packages/openapi-spec-builder@loopback/openapi-spec-builderMake it easy to create OpenAPI (Swagger) specification documents in your tests using the builder pattern.
packages/openapi-v3@loopback/openapi-v3Decorators that annotate LoopBack artifacts with OpenAPI v3 metadata and utilities that transform LoopBack metadata to OpenAPI v3 specifications
packages/repository@loopback/repositoryDefine and implement a common set of interfaces for interacting with databases
packages/repository-json-schema@loopback/repository-json-schemaConverts TS classes into JSON Schemas using TypeScript's reflection API
packages/repository-tests@loopback/repository-testsA shared test suite to verify @loopback/repository functionality with a given compatible connector
packages/rest@loopback/restExpose controllers as REST endpoints and route REST API requests to controller methods
packages/rest-crud@loopback/rest-crudREST API controller implementing default CRUD semantics
packages/rest-explorer@loopback/rest-explorerLoopBack's API Explorer
packages/security@loopback/securityA LoopBack component for security support.
packages/service-proxy@loopback/service-proxyA common set of interfaces for interacting with service oriented backends such as REST APIs, SOAP Web Services, and gRPC microservices
packages/testlab@loopback/testlabA collection of test utilities we use to write LoopBack tests.
packages/tsdocs@loopback/tsdocsAn package to generate api docs using Microsoft api-extractor and api-documenter
sandbox/example(private)Sample project for sandbox

We use npm scripts declared in package.json to work with the monorepo managed by lerna. See Developing LoopBack for more details.