dotnet-foundation / dotnet-foundation/projects

Issue: New .NET Foundation Project Application - TypeScript CodeDOM

Open
#360 1 comment 0 reactions 2 assignees View on GitHub

@sbwalker is already working on this.

Since Feb 13, 2024.

project application project support
Dominant language
No language data
Stars
157
Forks
37
PR merge metrics
No merged PRs in 30d

Description

Project Name

TypeScript CodeDOM

License

MIT

Contributor

Fonlow, Zijian Huang

Existing OSS Project?

No

Source Code URL

https://github.com/zijianhuang/TypeScriptCodeDOM

Project Homepage URL

No response

Project Transfer Signatories

Zijian Huang
z@fonlow.com

Description

Provide TypeScriptCodeProvider of .NET CodeDOM and a few helper classes for developing TypeScript code generators.

Name

Zijian Huang

Email

zijianhuang2000@gmail.com

GitHub Profile URL

https://github.com/zijianhuang

Committers

Zijian Huang

Discord Ids

No response

Governance Model

General practice with PR, and passing 1 to 3 levels of testing, as described in https://github.com/zijianhuang/TypeScriptCodeDOM/blob/master/CONTRIBUTING.md

CLA
  • If already an OSS project, was a Contribution License Agreement in place for contributions accepted?
How does the project check who has signed one?

No response

CLA Notification Alias

No response

Select the Project Transfer Agreement model

Assignment

Repository Layout

No response

Eligibility Criteria
  • The project is built on the .NET platform and/or creates value within the .NET ecosystem.
  • The project produces source code for distribution to the public at no charge.
  • The project's code is easily discoverable and publicly accessible (preferably on GitHub).
  • The project contains a build script that can produce deployable artifacts that are identical to the official deployable artifacts, with the exception of code signing (Exception may be granted for strong name keys, though strongly encouraged to be committed. Exception relies on OSS signing being in the build script for public builds).
  • When applicable, project must use reproducible build settings in its toolchain.
  • The project uses Source Link.
  • The project uses either embedded PDBs or publish symbol packages to NuGet (if applicable).
  • The project code signs their artifacts as appropriate.
  • The project organization has 2FA enabled. Requiring 2FA must be done as part of onboarding if not already enabled.
  • Libraries that are mandatory dependencies of the project are offered under a standard, permissive open source license which has been approved by the .NET Foundation (exceptions include a dependency that is required by the target platform where no alternative open source dependency is available such as the .NET Framework or a hardware specific library).
  • Committers are bound by a Contributor License Agreement (CLA) and/or are willing to embrace the .NET Foundation's CLA when the project becomes a Member.
  • The copyright ownership of everything that the project produces is clearly defined and documented.
  • The project has a public issue tracker where the status of any defect can be easily obtained.
  • The project has a published Security Policy.
  • The project has a home page which provides high level information about its status and purpose.
  • The project has a public communication channel where community members can engage with maintainers.
  • The project has a publicly available location where members can review and contribute to documentation.
PR Plan Summary

TypeScript CodeDOM had been a by-product of Strongly Typed Web API Client Generators since October 2015 until Feburary 2024, as a foundation library of TypeScript code generators of WebApiClientGen and then OpenApiClientGen, as well as internal code generators in some companies in whcih the devlopment teams have chosen the CodeDOM approach over templates.

TypeScriptCodeProvider has now covered a nearly maximum intersection of TypeScript language features and CodeDOM features, while:

  1. TypeScript has been evolving, and likely this continues.
  2. Both CodeDOM and TypeScript are Microsoft's technologies, and open sourced. Having another CodeProvider joining the "official" family of code providers sounds natural.
  3. The concrete examples with WebApiClientGen and OpenApiClientGen have shown the strengths/benefits of the CodeDOM approach over the template approach when developing TypeScript code generators.
  4. This may encourage and help more developers to develop code providers for more languages, and give the developers of code gen the CodeDOM approach.
Infrastructure Requirements Summary

"ReleaseBuild.bat" for release build, and "DotNetPack.bat" for releasing to Nuget.

Additional Notes

Legacy repositories:

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.