reflect-metadata VS proposal-decorators

Compare reflect-metadata vs proposal-decorators and see what are their differences.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
reflect-metadata proposal-decorators
4 68
3,215 2,767
- 0.8%
7.2 3.3
8 months ago 3 months ago
TypeScript
Apache License 2.0 -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

reflect-metadata

Posts with mentions or reviews of reflect-metadata. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-10-13.
  • Dynamic NestJS Listeners: Discover the Power of Lazy Loading
    3 projects | dev.to | 13 Oct 2024
    We could use the reflect-metadata library to store the metadata and then scan it manually to replace the placeholders with actual values, but there is a better way.
  • TypeScript please give us types
    10 projects | news.ycombinator.com | 7 Jul 2023
  • Using modern decorators in TypeScript
    4 projects | dev.to | 2 May 2023
    Second, TypeScript 5.0 cannot emit decorator metadata. Subsequently, it doesn’t integrate with the Reflect API and won’t work with the reflect-metadata npm package.
  • Deconstructing an Object Relationship Mapper (ORM) in Typescript
    2 projects | dev.to | 4 Feb 2022
    Database columns will be mapped to domain object properties using decorators. This will include relationships and enum types. reflect-metadata stores metadata about the classes and properties. Most of the work is a simple map for each class, renaming db column properties to domain model properties and vice versa. Reflect.defineProperty holds a list of field metadata on the target class. This is where more database ORM logic could live in the future such as column type, length, etc. A base domain model entity will use this metadata to map the models appropriately.

proposal-decorators

Posts with mentions or reviews of proposal-decorators. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-06-20.
  • Composing JavaScript Decorators
    1 project | dev.to | 9 Jul 2024
    The Decorators Proposal on GitHub and my previous article on decorators already do a great job of breaking down the basic use-cases of decorators. My goal isn't to recreate those examples there, but instead to highlight some lesser-known features and interactions. Additionally, I'll highlight how to compose or chain multiple decorators on a single class property.
  • The Magic of JavaScript Decorators: Enhancing Classes and Methods
    1 project | dev.to | 25 Jun 2024
    To learn more about decorators, refer to the TC39 Decorators Proposal and explore frameworks and libraries that implement this feature.
  • Scaffolding API projects easily with oak-routing-ctrl
    2 projects | dev.to | 20 Jun 2024
    First we have a set of TypeScript Decorators (conforming to TC39 proposal) that makes it straightforward to declare API endpoints & assign it to a handler function in a few lines of code:
  • The long path of JavaScript - from ES6 until today.
    4 projects | dev.to | 25 May 2024
    Although decorators are not yet available in JavaScript, they are actively used with the help of such transpilers as TypeScript, Babel and Webpack. Currently, the decorators proposal is in Stage 3, which means it is getting closer to being a part of native JavaScript. Decorators are the functions, that are called on other JavaScript elements, such as classes, class elements, methods, or other functions, by adding an additional functionality on those elements.
  • Making Web Component properties behave closer to the platform
    9 projects | dev.to | 21 Jan 2024
    Because many rules are common to many attributes (the coerceType operation is defined by WebIDL, or using similar rules, and the HTML specification defines a handful of microsyntaxes for the parseValue and stringifyValue operations), those could be packaged up in a helper library. And with decorators coming to ECMAScript (and already available in TypeScript), those could be greatly simplified:
  • The case for using decorators in your codebase
    1 project | dev.to | 10 Jan 2024
    Decorators are currently not a part of the standard JavaScript language. They are still being discussed in tc39 and have reached proposal stage 3. This means the spec has more or less stabilized and we can use them but they would be transplied before being run in the browser. This would be done via babel or tsc for most users
  • JavaScript Naming Conventions are Important
    5 projects | dev.to | 14 Nov 2023
    JavaScript was created a long time ago, and at the time of its inception, the authors decided not to use affirmative prefixes for boolean names. Now, they do their best by continuing to follow their convention, even if it goes against the community's opinion. Even if the authors wanted to introduce new naming conventions in the specification, they could not do it, at least not coherently. Old code cannot be renamed because JavaScript must remain backward-compatible. And starting to write new code using new approaches is not a great idea either, as there would be two ways to do the same thing, which is also undesirable.
  • ECMAScript Decorators. The Ones That are Real
    6 projects | dev.to | 24 Oct 2023
    2016-07 – Stage 2. After the decorators proposal reached stage 2, its API began to undergo significant changes. Furthermore, at one point the proposal was referred to as "ESnext class features for JavaScript." During its development, there were numerous ideas about how decorators could be structured. To get a comprehensive view of the entire history of changes, I recommend reviewing the commits in the proposal's repository. Here is an example of what the decorators API used to look like:
  • Strawberry - Zero-Dependency, Build-Free JavaScript Framework
    2 projects | /r/javascript | 2 Jun 2023
    The example you've given isn't valid JavaScript, JS doesn't have decorators. (Although there is a stage 3 tc39 for it, afaik no browser has implemented it)
  • Updates from the 96th TC39 meeting
    5 projects | /r/javascript | 19 May 2023
    There was a decorators issue brought up in the meeting (issue 508) and decorators metadata, as noted in the article, is now at stage 3. So there's still active work being done on decorators. If I had to guess, I'd say they'd be a likely candidate for ES2024.

What are some alternatives?

When comparing reflect-metadata and proposal-decorators you can also consider the following projects:

protobuf-ts - Protobuf and RPC for TypeScript

openapi-typescript - Generate TypeScript types from OpenAPI 3 specs

sequelize-typescript-decorators - Sequelize (SQL ORM for Node) Typescript Decorator that simplifies declarations of Sequelize models...

proposals - Tracking ECMAScript Proposals

di-compiler - A Custom Transformer for Typescript that enables compile-time Dependency Injection

remult - Full-stack CRUD, simplified, with SSOT TypeScript entities

arktype - TypeScript's 1:1 validator, optimized from editor to runtime

ferocity - Write Java expression trees, statements, methods and classes with a LISP-like internal DSL

proposal-decorator-metadata

schemats - Generate typescript interface definitions from SQL database schema

proposal-class-fields - Orthogonally-informed combination of public and private fields proposals

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured

Did you konow that TypeScript is
the 2nd most popular programming language
based on number of metions?