Skip to content

Issue: New .NET Foundation Project - LocalStack.NET #459

@Blind-Striker

Description

@Blind-Striker

Project Name

LocalStack .NET Client

License

MIT

Contributor

LocalStack.NET Organization, Deniz İrgin

Existing OSS Project?

Yes

Source Code URL

https://github.com/localstack-dotnet/localstack-dotnet-client

Project Homepage URL

No response

Project Transfer Signatories

Description

A .NET client that configures the AWS SDK to use LocalStack for easy local cloud development and testing.

Name

Deniz İrgin

Email

denizirgin@gmail.com

GitHub Profile URL

https://github.com/Blind-Striker

Committers

Deniz İrgin

Discord Ids

No response

Governance Model

The project's governance follows a transparent, community-driven process managed through the GitHub repository, as detailed in CONTRIBUTING.md file.

Proposing and Submitting Changes

  1. Proposal: Feature ideas are first discussed in GitHub Discussions, while bugs are reported via GitHub Issues.
  2. Submission: Code contributions follow a standard fork-and-pull model. Contributors open a Pull Request (PR) from their own feature branch, using the PR template and conventional commit standards.

Review and Acceptance Process

All Pull Requests undergo a two-stage review process to ensure quality:

  1. Automated Checks: Every PR must first pass a comprehensive CI/CD pipeline, which builds the project, runs thousands of tests across multiple platforms, and validates code quality with static analyzers.
  2. Maintainer Review: A maintainer then reviews the PR for adherence to the documented code quality standards, including test coverage, code style, and backward compatibility.

A change is merged only after passing both automated and manual reviews.

Appointing New Committers

The project currently operates under a lead maintainer model and is committed to expanding this team as the community grows. New committers are identified through a merit-based process, with candidates chosen from active, long-term contributors. Key criteria include:

  • A deep understanding of the project's architecture.
  • A commitment to quality and testing.
  • Positive and collaborative community engagement.

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

Contribution

Repository Layout

The project was designed from the start to follow modern .NET open-source best practices, and we believe the current repository structure and development model already align with the .NET Foundation's guidance.

  • Development Model: While I am currently the project's sole contributor, all development adheres to a strict, public workflow on GitHub. All changes are managed through the same Pull Request and review process that will be used for all future community contributions, ensuring a transparent process is established from day one.

  • Repository Structure: The repository utilizes a standard and clean layout, including:

    • A src directory for the main library source code.
    • A tests directory containing multiple projects for unit, integration, and functional tests.
    • A build directory for Cake-based build system.
    • All recommended root-level files, including README.md, LICENSE, CONTRIBUTING.md, CHANGELOG.md, SECURITY.md, and CODE_OF_CONDUCT.md.

Therefore, I do not anticipate needing to make any changes to the repository layout or development model as part of the process of joining the .NET Foundation.

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.

Describe why you are applying for Project Membership.

Why are you applying to add your project to the Foundation?

I am applying to join the .NET Foundation to ensure the long-term growth, stability, and community-driven future of the localstack-dotnet-client project. My goal is to transition it from a well-maintained solo project into a lasting, community-owned asset that serves the .NET ecosystem.

I believe that joining the foundation will help me achieve this in several key ways:

  1. Fostering Community and Collaboration: The project's potential can only be fully realized as a community effort. I believe that membership in the .NET Foundation will increase visibility, attracting new users and contributors, and helping to foster the "open development and collaboration" that is central to the foundation's mission.

  2. Ensuring Longevity and Stability: By placing the project under the foundation's stewardship, I am giving it a permanent home that is not dependent on a single individual. This ensures the project's sustainability, providing a reliable tool for .NET developers for years to come.

  3. Providing Trust and Governance: Membership provides a critical stamp of approval, assuring users that the project adheres to high standards of quality and legal compliance. The foundation's management of legal aspects, such as the Contributor License Agreement (CLA), provides a robust governance framework that is essential for a healthy open-source project.

Ultimately, my reason for joining is to place localstack-dotnet-client in the best possible environment to thrive and continue to "create value within the .NET ecosystem" for the long term.

Infrastructure Requirements Summary

No response

Additional Notes

No response

Metadata

Metadata

Labels

project applicationproject supportUse this label to request support for an existing .NET Foundation project

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions