StaticDeploy is an open-source platform for deploying and configuring static web applications and websites. We can think about it as a Kubernetes for static content.
StaticDeploy was created with two objectives in mind:
-
make it easy to configure a static app at runtime, as opposed to injecting the configuration into its static build
-
make it easy to deploy multiple "versions" of a static app, specifically a version for each branch / pull request, so that frontend developers can show their work-in-progress and get early feedback from their clients
For more information on StaticDeploy visit staticdeploy.io.
This is the StaticDeploy monorepo, which includes several different projects:
- core: module implementing StaticDeploy's core business logic (entities, usecases, and gateway interfaces)
- pg-s3-storages: gateway for storage resources backed by S3 and [PostgreSQL]
- memory-storages: in-memory gateway for storage resources
- storages-test-suite: test suite for storages
- tar-archiver: implementation of the core
IArchiver
interface using tar - jwt-authentication-strategy: authentication strategy for authenticating requests with JWT tokens
- oidc-authentication-strategy: authentication strategy for authenticating requests with OpenID Connect tokens
- http-adapters: adapters that implement an http API for StaticDeploy's core usecases
- serve-static: express middleware for serving files in a local directory
- staticdeploy: main service pulling together the other modules and implementing the StaticDeploy platform
- sdk: browser and nodejs SDK for StaticDeploy's API
- cli: CLI tool to deploy static apps
- management-console: web GUI for the API
- website: landing page and documentation, deployed with StaticDeploy on staticdeploy.io
See CONTRIBUTING.md.