-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Participation in the new version of the system #78
Comments
I am excited to see the new version of this library. I am willing to participate in the alpha of the new major version. |
Hi, I want to investigate the potential of this library and would be happy to participate |
Sign me up. I've been testing doing recursive model hydration with data from the Jira API. So far it looks very promising with the exclusion of one bug with getCtor but that looks like its been flagged as fixed in v1. I'd be happy to run the alpha through my use case. |
Looking to see if I can leverage this for my Remix project. There's an issue with transmitting the class from backend to the front end via the useLoaderData(). I'm hoping to leverage this to send the meta data along so when it gets to the other side the class/object can be reconstructed. |
I would like to be able to help with the alpha version. I was looking to use this package for generic classes which does not seem to be possible in the current version but will be in the new version (#30). My use case being to help create documentation from the actual source code to produce 'live' docs rather than manually documenting things. |
i would to be able to use alpha on this |
Hi guys, TY for your interest! 馃帀 I'm late with the alpha, working hard on it. 馃彮 I've already prepared website and documentation (first basic version). Project will remain private for a while, I'll invite you into the organization and send you link to discord server, so you can get proper support and I can get some feedback I hope. 馃檪 |
Hi! I'd love to participate in the alpha :) |
Late (again), but it will be this week. 馃帀 I'm stucked on one strange issue caused by strange conditions. I'm finally able to reproduce it. Now I have to fix it. |
I was just looking at another repo for something else and it has a link to moddle. It might be of use to this project or someone else looking to reconstruct JSON to object. In my case I needed a way to convert an object to JSON and send it across the wire. Then reconstruct the object once it arrives on the client side. |
I'm willing to participate |
I've granted you access to the organization and mentioned you in an issue. |
@Hookyns Please add me to the alpha! |
Great project, thanks for your work @Hookyns! I'd love to join the alpha, too! :) |
First of all thx for your awesome work! You saved me hours of work! I would like to join the alpha too! |
Hi, I'd love to participate in the alpha! |
Hey! I'd also like to join the alpha :) |
Count me in! |
Hi! |
Hi, I really like what you are doing, looking for a similar solution for a long time, may I join too? |
Hi, I'm interested in participating as well if it's not too late! |
@nduc For that purpose, you may be interested in I'm also working on its companion library |
Hi, I'm interested in participating too if possible ! |
Is this project still happening? If so, I'm also interested. I have extensive experience with reflection in PHP and C#, if that matters - I've written DI containers in both languages, and I also wrote one of the earliest annotation libraries for PHP. Where I'm stuck with TypeScript is there seems to be no good approach to dependency injection containers without reflection - I've spent years on-and-off trying to solve this with types, I've looked at every DI container with types, and it just doesn't seem feasible. I started tinkering with deepkit.io and I don't find their reflection approach at all useful. So yeah, quite interested in testing this. :-) |
Sure! 馃檪 DI was the main reason why I started to work on this. |
Yeah, a DI container is the main reason I want reflection too. My ideas about a DI container is quite different from the "main stream" - quite a lot of non-features. I wrote at least 5 DI containers before settling on this. 馃槄 |
Sign me up |
First prototype version of the new Typegen is out. 馃帀 Information for participants is in the private repository. |
馃ぉ how did you pull that off?? will be testing today. 馃榿 |
Sign me up please! |
I am also very interested 馃憖 |
As we discussed earlier, Typegen is completely standalone tool which just take .ts files as input and generate static metadata library (I call it a typelib) as output; it's not part of the build process. It's based on alpha's transformer. I just had to create the tool and rewrite some parts, it took just about 4 weeks of work and I'm a week behind with the prototype against expectations. 馃し It's rly just a prototype. It only generate the typelib which you can use statically ( I need at least another month to get it into alpha phase. |
oh, okay, I thought you were trying to say you had come up with a solution. so it's still going to be a limited version for SWC and ESBuild. I'm still not sure if I think this is a good idea. I mean, imagine you ship something like a DI container or router that depends on this runtime, and you're showing cool examples like and I understand why it's the best we can do. but I still wonder if maybe it would be possible to integrate the official TS compiler into something like Vite... I guess if all of these tools are designed to work file-by-file, it's just not going to be possible? man, that's so frustrating. 馃様 |
I think I have a possible solution for this too but I don't know what the performance will be. It may be even worse than switching to plain old tsc. But it's not a priority for me. I think that the planned supported features (for swc and esbuild) will be sufficient for about 50 % of use-cases which is still infinitely more than what's possible now. 馃檪 And you can still say that users have to enable strict mode (noImplicitAny to be specific), then it will work without any issues. But it will have a solution in the future thanks to Donny's STC. EDIT: class SomeService {
constructor(logger: ILogger, router: Router, somethingElse: SomethingElse) {}
orMethodInjection(something: ISomething) {}
} with registration like (super simple & naive implementation): import { Metadata } from "./metadata.typelib";
class ServiceCollection {
addSingleton(serviceType: Type, serviceImplementation: Type): void {}
addTransient(serviceType: Type, serviceImplementation: Type): void {}
}
const sc = new ServiceCollection();
const serviceImplementations = Metadata.getTypes().filter(t => t.isClass() && !t.isAbstract() && t.name.endsWith("Service"));
for (let implementation of serviceImplementations) {
sc.addTransient(implementation.implements.find(i => i.name.endsWith("Service")) , implementation);
} There is no need to infer anything. |
Here is a preview with esbuild, using the new Typegen and esbuild plugin. Typegen is still a prototype (pre-alpha version) and the esbuild plugin is just a proof of concept, but I progress quickly. |
Hi! Amazing job! I would love to give a try to the alpha version :) |
Hello, I'm developer of typia, and wanna see how |
Great work 馃檶 I also want to join the alpha channel馃憖 |
I'd like to participate =) |
Hi, I'm interested in participating. |
Please, I would like to test. 馃槃 |
Please, I want it too |
Hi, I too have a very burning interest in such a thing |
Hey, thanks a lot for this project! Sign me up for the alpha too please, if you need contributors I'm willing to contribute too 馃槃 |
Hi @Hookyns I would be interested to participate and contribute. I'm the author of https://mion.io/ Good Job 馃殌猸愶笍 |
Hello guys, I'll make the repo public soon. You can visit rttist.org and docs. Post your feedback. Here is the latest demo. PS: I will greatly appreciate a PR to improve the docs! |
Can I try out the alpha version? |
Sign me up! |
Would you please include me? Thanks! |
Hi, can you please invite me? |
Can I also join in? Thank you! |
@Hookyns, count me in please馃憤 |
Looking forward to checking out the new version 馃敟 |
Sign here who wants to participate in the alpha of the new major version. I will invite you to the private project when it is ready. 馃帀
The text was updated successfully, but these errors were encountered: