{"id":19538059,"url":"https://github.com/archetypicalsoftware/scaffold","last_synced_at":"2026-05-16T15:01:56.613Z","repository":{"id":34881732,"uuid":"175697473","full_name":"ArchetypicalSoftware/Scaffold","owner":"ArchetypicalSoftware","description":"Scaffold is an extensible library designed to quickly build service workers modeled after the .NET core middleware pipeline. ","archived":false,"fork":false,"pushed_at":"2023-01-07T20:42:02.000Z","size":1450,"stargazers_count":2,"open_issues_count":16,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-08T18:15:58.528Z","etag":null,"topics":["extensible","npm-package","service-worker"],"latest_commit_sha":null,"homepage":"https://archetypical.software/Product/Detail/Scaffold","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ArchetypicalSoftware.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-14T20:50:55.000Z","updated_at":"2020-08-02T23:42:38.000Z","dependencies_parsed_at":"2023-01-15T10:00:50.222Z","dependency_job_id":null,"html_url":"https://github.com/ArchetypicalSoftware/Scaffold","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArchetypicalSoftware%2FScaffold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArchetypicalSoftware%2FScaffold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArchetypicalSoftware%2FScaffold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArchetypicalSoftware%2FScaffold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ArchetypicalSoftware","download_url":"https://codeload.github.com/ArchetypicalSoftware/Scaffold/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240793294,"owners_count":19858636,"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":["extensible","npm-package","service-worker"],"created_at":"2024-11-11T02:31:06.726Z","updated_at":"2026-05-16T15:01:51.591Z","avatar_url":"https://github.com/ArchetypicalSoftware.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scaffold\n\n![Scaffold](docs/images/Scaffold.png)\n\nScaffold is an library designed to quickly build service workers modeled after the .NET core middleware pipeline.\n\nExample implementation\n\n```ts\n// service-worker.ts\n\nimport { IApplicationBuilder, Scaffold } from \"@archetypical/scaffold\";\nimport { strategies } from \"swork-cache\";\n\nconst offlineAssets = [\"/css/site.css\", \"/js/site.js\", \"/\"];\n\nclass Startup {\n    public configure(builder: IApplicationBuilder): void {\n        builder\n            .useInstallCache(offlineAssets)\n            .map(offlineAssets, strategies.backgroundFetch());\n    }\n}\n\nScaffold\n    .createBuilder(\"1.0.0\")\n    .useStartup(Startup)\n    .build();\n```\n\nIn the example above, we were able to quickly define a list of assets that should be cached up on install of the service worker. In addition, each new request for those assets will immediately return the cached response and update the cache with the latest version in a background process.\n\n* [Overview](readme.md)\n* [IApplicationBuilder](docs/iapplication-builder.md)\n* [IServiceCollection](docs/iservice-collection.md)\n* [IServiceProvider](docs/iservice-provider.md)\n* [IServiceWorkerBuilder](docs/iservice-worker-builder.md)\n* [IApplicationLifetime](docs/iapplication-lifetime.md)\n* [Startup](docs/startup.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farchetypicalsoftware%2Fscaffold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farchetypicalsoftware%2Fscaffold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farchetypicalsoftware%2Fscaffold/lists"}