{"id":13505615,"url":"https://github.com/fogfish/aws-cdk-pure","last_synced_at":"2025-10-26T21:32:50.293Z","repository":{"id":39748899,"uuid":"203997115","full_name":"fogfish/aws-cdk-pure","owner":"fogfish","description":"Purely Functional and high-order cloud components with AWS CDK","archived":false,"fork":false,"pushed_at":"2023-01-07T04:35:38.000Z","size":1284,"stargazers_count":93,"open_issues_count":10,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-18T16:25:52.327Z","etag":null,"topics":["aws","aws-cdk","cloud-component","higher-order-component","hoc","iaac","infrastructure","infrastructure-as-code","pure-functional","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fogfish.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-23T12:47:04.000Z","updated_at":"2024-08-07T03:41:20.000Z","dependencies_parsed_at":"2023-02-06T12:00:44.365Z","dependency_job_id":null,"html_url":"https://github.com/fogfish/aws-cdk-pure","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogfish%2Faws-cdk-pure","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogfish%2Faws-cdk-pure/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogfish%2Faws-cdk-pure/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogfish%2Faws-cdk-pure/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fogfish","download_url":"https://codeload.github.com/fogfish/aws-cdk-pure/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221433980,"owners_count":16820349,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","aws-cdk","cloud-component","higher-order-component","hoc","iaac","infrastructure","infrastructure-as-code","pure-functional","typescript"],"created_at":"2024-08-01T00:01:10.678Z","updated_at":"2025-10-26T21:32:45.260Z","avatar_url":"https://github.com/fogfish.png","language":"TypeScript","funding_links":[],"categories":["Construct Libraries","TypeScript","High-Level Frameworks","aws"],"sub_categories":["Multi-accounts setup"],"readme":"# aws-cdk-pure\n\nThe library is a toolkit for development of **high-order** and **purely functional** components with [AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/home.html).\n\n[![Build Status](https://secure.travis-ci.org/fogfish/aws-cdk-pure.svg?branch=master)](http://travis-ci.org/fogfish/aws-cdk-pure)\n[![Git Hub](https://img.shields.io/github/last-commit/fogfish/aws-cdk-pure.svg)](http://travis-ci.org/fogfish/aws-cdk-pure)\n[![npm](https://img.shields.io/npm/v/aws-cdk-pure?label=pure)](https://www.npmjs.com/package/aws-cdk-pure) \n[![npm](https://img.shields.io/npm/v/aws-cdk-pure-hoc?label=hoc)](https://www.npmjs.com/package/aws-cdk-pure-hoc) \n\n\n## Inspiration\n\nThe purely functional extension to AWS CDK and has been inspired by the following posts\n* [Composable Cloud Components with AWS CDK](https://i.am.fog.fish/2019/07/28/composable-cloud-components-with-aws-cdk.html)\n* [Purely Functional Cloud Components with AWS CDK](https://i.am.fog.fish/2019/08/23/purely-functional-cloud-with-aws-cdk.html).\n\n`aws-cdk-pure` is an utility for design and development of purely functional and higher-order components. You know React Hooks! Think of it as **hooks for your cloud infrastructure**.\n\n\n## Getting Started\n\nThis repository implements TypeScript libraries for cloud development. Please see its details and guidelines in corresponding README.md files\n\n* [aws-cdk-pure](pure) - a core part of the toolkit. It defines types and functional primitives required for hight-order components development. It maintain a slim dependencies towards other library, only `@aws-cdk/core` is used.\n\n* [aws-cdk-pure-hoc](hoc) - implements reusable purely functional high-order components. These components are building blocks and design patterns for your cloud infrastructure.  \n\n\n## How To Contribute\n\nThe library is [MIT](LICENSE) licensed and accepts contributions via GitHub pull requests:\n\n1. Fork it\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Added some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create new Pull Request\n\nThe development requires TypeScript and AWS CDK\n\n```bash\nnpm install -g typescript ts-node aws-cdk\n```\n\n```bash\ngit clone https://github.com/fogfish/aws-cdk-pure\ncd aws-cdk-pure\n\n## cd either to pure or hoc folder\n\nnpm install\nnpm run test\nnpm run lint\nnpm run build\n```\n\n## License\n\n[![See LICENSE](https://img.shields.io/github/license/fogfish/aws-cdk-pure.svg?style=for-the-badge)](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffogfish%2Faws-cdk-pure","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffogfish%2Faws-cdk-pure","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffogfish%2Faws-cdk-pure/lists"}