{"id":13702943,"url":"https://github.com/deco-cx/deco","last_synced_at":"2026-05-14T23:13:06.253Z","repository":{"id":44647228,"uuid":"512911060","full_name":"deco-cx/deco","owner":"deco-cx","description":"Git-based Visual CMS for Deno, \u003c/\u003e htmx and Tailwind apps. Deploy on any Deno-compatible host.","archived":false,"fork":false,"pushed_at":"2026-05-13T01:05:54.000Z","size":5384,"stargazers_count":844,"open_issues_count":91,"forks_count":54,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-05-13T04:39:25.400Z","etag":null,"topics":["cms","deno","fresh","frontend","hacktoberfest","htmx","platform","preact","tailwind","tailwindcss","typescript","webflow","wordpress"],"latest_commit_sha":null,"homepage":"https://deco.cx","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deco-cx.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":"MAINTAINERS.txt","copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-07-11T21:16:43.000Z","updated_at":"2026-05-13T00:51:22.000Z","dependencies_parsed_at":"2026-04-02T03:06:26.317Z","dependency_job_id":null,"html_url":"https://github.com/deco-cx/deco","commit_stats":{"total_commits":2156,"total_committers":41,"mean_commits":52.58536585365854,"dds":0.4216141001855288,"last_synced_commit":"c46ae7704e34c803719aca30b503448dba2e0ba8"},"previous_names":["deco-cx/deco"],"tags_count":1351,"template":false,"template_full_name":null,"purl":"pkg:github/deco-cx/deco","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deco-cx%2Fdeco","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deco-cx%2Fdeco/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deco-cx%2Fdeco/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deco-cx%2Fdeco/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deco-cx","download_url":"https://codeload.github.com/deco-cx/deco/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deco-cx%2Fdeco/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33046897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-14T02:00:06.663Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cms","deno","fresh","frontend","hacktoberfest","htmx","platform","preact","tailwind","tailwindcss","typescript","webflow","wordpress"],"created_at":"2024-08-02T21:00:46.748Z","updated_at":"2026-05-14T23:13:06.241Z","avatar_url":"https://github.com/deco-cx.png","language":"TypeScript","funding_links":[],"categories":["Apps","TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/deco-cx/deco/assets/1633518/ba714da8-514e-4b48-bbec-b7d86377b273\" alt=\"deco\" width=\"210px\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eGit-based Visual CMS for Typescript.\u003c/strong\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://deco.cx\"\u003edeco.cx\u003c/a\u003e\n  ·\n  \u003ca href=\"https://docs.deco.cx/\"\u003edocs\u003c/a\u003e\n  ·\n  \u003ca href=\"https://admin.deco.cx\"\u003elogin\u003c/a\u003e\n  ·\n  \u003ca href=\"https://deco.cx/discord\"\u003ejoin our discord\u003c/a\u003e\n  ·\n  \u003ca href=\"https://x.com/deco_frontend\"\u003eX\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://jsr.io/@deco/deco\" target=\"_blank\"\u003e\u003cimg alt=\"jsr\" src=\"https://jsr.io/badges/@deco/deco\" /\u003e\u003c/a\u003e\n  \u0026nbsp;\n  \u003ca href=\"https://deno.land/x/deco\" target=\"_blank\"\u003e\u003cimg alt=\"Deno Land\" src=\"https://img.shields.io/badge/denoland-deco-green\" /\u003e\u003c/a\u003e\n  \u0026nbsp;\n  \u003ca href=\"https://deco.cx/discord\" target=\"_blank\"\u003e\u003cimg alt=\"Discord\" src=\"https://img.shields.io/discord/985687648595243068?label=Discord\u0026color=7289da\" /\u003e\u003c/a\u003e\n  \u0026nbsp;\n  \u003ca href=\"https://x.com/deco_frontend\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/twitter/follow/deco_frontend\" alt=\"Deco Twitter\" /\u003e\u003c/a\u003e\n  \u0026nbsp;\n  \u003ca href=\"https://github.com/deco-cx/deco/workflows/ci\" target=\"_blank\"\u003e\u003cimg src=\"https://github.com/deco-cx/deco/workflows/ci/badge.svg?event=push\u0026branch=main\" alt=\"Build Status\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr /\u003e\n\n![Deco web editor](https://github.com/deco-cx/deco/assets/1633518/b7599207-07dc-40d3-b124-1e73fbb75d10)\n\n\u003cbr /\u003e\n\n- **Modern stack focused on performance and JavaScript-independence**\n  - Server-side JSX templates\n  - ⁠Client-side HTMX interactivity\n  - Local development with HTTPS tunnel — edit on the web, commit on your local\n    git.\n  - ⁠Native Tailwind Theme Support with multiple Component Libraries supported:\n    DaisyUI, Preline, FloatUI, Shadcn UI\n- **Easy for business users and content editors**\n  - TypeScript Props to Content Editor UI generator\n  - Asset manager with multimedia support\n  - Publishing workflow with staging area, immutable releases and immediate\n    rollbacks\n  - Roles and permissions for content-only editors **(invite 1 content-editor\n    member for free per site!)**\n- **⁠Deploy with one click to any Deno-compatible host**\n  - Deno Deploy (Preferred Partner) — Global platform with generous free tier\n  - Azion Edge _(Coming soon)_\n  - Fly.io _(Coming soon)_\n  - Nirvana Cloud _(Coming soon)_\n  - Digital Ocean _(Coming soon)_\n  - deco.cx PRO hosting: $99 USD/mo for always-on multi-zone deployment on our\n    Enterprise-scale managed infrastructure.\n\n# Getting Started\n\n\u003e [!TIP]\n\u003e It takes less than 1 minute to get up and running with Deco.\n\n1. Visit [deco.new](https://deco.new) and choose a template.\n2. Choose a name and create a site. This gives you a free\n   [`deco-sites`](https://github.com/deco-sites/) GitHub repository and your\n   very own `*.deco.site` domain.\n3. Follow the instructions to clone your repo and run your development server\n   locally, _or_ deploy to Deno Deploy with one click for free.\n\n**Your site is now ready** to edit with our beautiful visual CMS. All changes\nwill be saved to git!\n\nNow, to get to production, install any of the Hosting apps available in\n`deco.store` by clicking on \"Create new production environment\".\n\n# Running the Deco Engine Locally\n\nIf you want to contribute to the Deco engine itself or test changes to the core\nframework, you can run a local version of the engine:\n\n1. Clone this repository:\n   ```bash\n   git clone https://github.com/deco-cx/deco.git\n   ```\n\n2. Navigate to your target project that runs deco (e.g., a site from\n   `deco-sites`):\n   ```bash\n   cd path/to/your-deco-site\n   ```\n\n3. Run the dev script pointing to your local deco clone:\n   ```bash\n   deno run -A jsr:@deco/deco/scripts/dev ../deco\n   ```\n   \u003e Replace `../deco` with the relative path to where you cloned the deco\n   \u003e repository.\n\n4. If you encounter any missing package errors, add them to your project:\n   ```bash\n   deno add \u003cpackage-name\u003e\n   ```\n\nThis will run your site using your local version of the deco engine, allowing\nyou to test changes and contribute back to the project.\n\n# TypeScript Props to Visual Content Editor\n\nDeco's core feature is generating a content editor UI from your TypeScript\ninterface `Props`. For example, declaring a ProductShelf JSX component with\nthese `Props`...\n\n```typescript\nimport ProductCard, { Layout } from \"$store/components/product/ProductCard.tsx\";\nimport type { Product } from \"apps/commerce/types.ts\";\n\nexport interface Props {\n  products: Product[] | null;\n  title?: string;\n  description?: string;\n  layout?: {\n    headerAlignment?: \"center\" | \"left\";\n    headerfontSize?: \"Normal\" | \"Large\";\n  };\n  cardLayout?: Layout;\n}\n\nexport default function ProductShelf(props: Props) {\n  /** JSX Preact + Tailwind UI Section **/\n}\n```\n\n... will automatically generate this admin UI for you:\n\n![CleanShot 2023-11-14 at 16 51 51](https://github.com/deco-cx/deco/assets/1633518/71f08873-8d62-42ec-9732-81dfa83f300c)\n\n## Documentation\n\nExplore the capabilities of Deco further in our comprehensive documentation.\nLearn how to craft Sections, Loaders, Apps and much more. Go to\n[deco.cx/docs/en](https://docs.deco.cx/).\n\n## Motivation\n\nDeco aims to radically simplify web development — like it was in the 90s, but\nwith all the modern good stuff baked in. We propose that this starts by\nelevating TypeScript into a globally shared vocabulary of types that bridge the\ngap between interfaces and APIs. The simplicity of defining a type and getting\nauto-completions with multiple matching integrations from a community of Deco\napps is a game-changer for developer productivity — both human and AI. It's a\nshift towards a more collaborative and efficient web development paradigm, where\nthe community's collective effort translates into individual project success. No\nmore reinventing the wheel, no more silos, no more wasted time. Just focusing on\ncustomer needs, **getting the data from wherever you need,** when you need it,\nand **allowing everyone in the team to create and publish great content** with\nthat data, safely.\n\nTo learn more about why we built deco, visit our\n[Why We Web](https://deco.cx/why) manifest at https://deco.cx/why.\n\n## Community\n\nJoin the community on [deco.cx Discord Server](https://deco.cx/discord). Share\nyour apps, explore others' creations, and contribute to the shared vocabulary\nthat makes Deco a thriving ecosystem.\n\n## Deco's advantages\n\nWith **Deco** you can:\n\n- Craft modern web apps with a **visual configuration editor** for managing\n  APIs, UIs and content — all in the same place.\n- Compose pre-built features from a **community-driven ecosystem of Apps,** with\n  one-click installation.\n- Evolve your Apps with **built-in realtime feature flags,** rolling out code or\n  content to specific audiences.\n\n**Deco Blocks are interoperable:** one's output can be visually configured as\nanother's input in the visual editor, **based on matching TypeScript types.**\n\nFor example, a Product Shelf UI component might depend on a **`Product[]`.**\nThere are many ways to get a `Product[]`, such as fetching it from an ecommerce\nplatform (like [**Shopify**](https://github.com/deco-cx/apps/tree/main/shopify)\nor [**VTEX**](https://github.com/deco-cx/apps/tree/main/vtex)) or a search\noptimization provider (like\n[**Algolia**](https://github.com/deco-cx/apps/tree/main/algolia) or\n[**Typesense**](https://github.com/deco-cx/apps/tree/main/typesense)). Deco will\nautomatically suggest matching integrations based on the defined type from a\nwide range of available apps, and the developer can choose the one that best\nfits their needs. **Building UIs can now be abstracted completely from their\ndata integration. Code against a known-type, get tons of first-class\nintegrations, ready-to-deploy.**\n\nTo try out our visual editor, navigate to the\n[deco.cx playground](https://play.deco.cx), choose a template, and experience a\nsimplified yet powerful way to build web apps.\n\n## Key Features\n\n- Shared Vocabulary: Define the type you need, and Deco auto-completes with\n  multiple matching integrations from a global community of apps. It's\n  TypeScript taken a step further, turning types into a shared vocabulary that\n  powers your UI and API integrations.\n\n- Pre-built Implementations: Speed up your development with ready-to-use\n  Sections, Loaders, and Actions. A treasure trove of pre-built implementations\n  awaits to be discovered and utilized in your projects.\n\n- Community-Driven Ecosystem: Engage with a global community of developers on\n  deco.hub. Share, discover, and collaborate to enrich the shared vocabulary\n  that Deco thrives on.\n\n- Simplified Development Workflow: Just define your types, and let Deco handle\n  the rest. It streamlines the workflow from type definition to UI rendering and\n  API integration.\n\n- Interoperable: Deco facilitates seamless interaction between different apps\n  and platforms. It’s about breaking down silos and fostering a more\n  interconnected web development ecosystem.\n\n## Deploy to your own infrastructure\n\nThe deno project created with Deco is completely standalone — all of the CMS\ninformation is neatly packed in JSON files along with the code. Deco is merely a\ngit-based editor.\n\nThis means you can deploy a Deco project easily to any hosting platform you\nwant. By using our integrated hosting partners, you get full first-class\nenvironment support an observability inside Deco.\n\n\u003e [!WARNING]\n\u003e Self-hosting the editor itself is coming in early 2025. Bear with us as we\n\u003e refactor some innards before we can invite more developers to extend it! We're\n\u003e looking forward to it.\n\n## Deploy to the deco.cx PRO edge\n\nYou can also deploy any Deco app to [deco.cx](https://deco.cx/) — the managed\ninfrastructure by the authors of this project.\n\nWith any [deco.cx subscription](https://deco.cx/en/pricing), you also get:\n\n- Managed edge infrastructure\n- Realtime Web Analytics based on Clickhouse\n- Observability with tracing and error logging by HyperDX\n- Access to all [deco.store](https://deco.store) apps\n- Infinite revision history for all CMS changes\n- Team support with roles and permissions\n- Guest support (for allowing your customers to edit their sites).\n- And a bunch of other features we launch every month :)\n\n## 3P Integrations\n\nHere is a table with the integrations that we have built and the statuses of\nthese projects.\n\n| Integrations                                                                                               | Home | PLP | PDP | Cart | Checkout proxy | Order placed proxy | My account proxy |\n| :--------------------------------------------------------------------------------------------------------- | :--- | :-- | :-- | :--- | :------------- | :----------------- | :--------------- |\n| [VTEX](https://github.com/deco-cx/apps/blob/main/vtex/README.md)                                           | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| [VNDA](https://github.com/deco-cx/apps/blob/main/vnda/README.md)                                           | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| [Shopify](https://github.com/deco-cx/apps/blob/b072c1fdfab8d5f1647ed42f9dbaae618f28f05f/shopify/README.md) | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| [Linx](https://github.com/deco-cx/apps/blob/main/linx/README.md)                                           | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| Linx impulse                                                                                               | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| [Nuvemshop](https://github.com/deco-cx/apps/blob/main/nuvemshop/README.MD)                                 | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n| [Wake](https://github.com/deco-cx/apps/blob/main/wake/README.md)                                           | ✅   | ✅  | ✅  | ✅   | ✅             | ✅                 | ✅               |\n\n## Cache env vars (WIP)\n\n| Environment Variable          | Description                                                                           | Example Value             |\n| ----------------------------- | ------------------------------------------------------------------------------------- | ------------------------- |\n| `ENABLE_LOADER_CACHE`         | Flag to enable or disable the loader cache                                            | `true`                    |\n| `LOADER_CACHE_START_TRESHOLD` | Cache start threshold                                                                 | `0`                       |\n| `WEB_CACHE_ENGINE`            | Defines the cache engine(s) to use                                                    | `\"FILE_SYSTEM,CACHE_API\"` |\n| `FILE_SYSTEM_CACHE_DIRECTORY` | Directory path for file system cache                                                  | `/tmp`                    |\n| `CACHE_MAX_SIZE`              | Maximum size of the file system cache (in bytes)                                      | `1073741824` (1 GB)       |\n| `CACHE_TTL_AUTOPURGE`         | Flag to automatically delete expired items from the file system cache (cpu intensive) | `false`                   |\n| `CACHE_TTL_RESOLUTION`        | Time interval to check for expired items in the file system cache (in milliseconds)   | `30000` (30 seconds)      |\n| `CACHE_MAX_AGE_S`             | Time for cache to become stale                                                        | `60` (60 seconds)         |\n\n## Contribute\n\nWe welcome contributions! Whether you’re fixing bugs, improving the\ndocumentation, or proposing new features, your efforts are valuable. Check out\nour contribution guidelines to get started.\n\n## Thanks to all contributors\n\n\n\u003ca href=\"https://github.com/deco-cx/deco/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contributors-img.web.app/image?repo=deco-cx/deco\" /\u003e\n\u003c/a\u003e\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeco-cx%2Fdeco","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeco-cx%2Fdeco","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeco-cx%2Fdeco/lists"}