{"id":14037315,"url":"https://github.com/dojo/examples","last_synced_at":"2025-08-03T14:36:40.261Z","repository":{"id":43395685,"uuid":"62800980","full_name":"dojo/examples","owner":"dojo","description":":rocket: Dojo - example applications.","archived":false,"fork":false,"pushed_at":"2023-09-26T15:31:12.000Z","size":26151,"stargazers_count":76,"open_issues_count":4,"forks_count":66,"subscribers_count":27,"default_branch":"master","last_synced_at":"2025-04-08T01:42:02.998Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://dojo.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dojo.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-07T11:14:04.000Z","updated_at":"2024-07-01T21:37:04.000Z","dependencies_parsed_at":"2024-05-03T13:02:56.341Z","dependency_job_id":"ba7537bb-6bc4-4369-9af9-30539c8c7509","html_url":"https://github.com/dojo/examples","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/dojo%2Fexamples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojo%2Fexamples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojo%2Fexamples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojo%2Fexamples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dojo","download_url":"https://codeload.github.com/dojo/examples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252279012,"owners_count":21722811,"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":[],"created_at":"2024-08-12T03:02:42.045Z","updated_at":"2025-05-04T02:32:11.026Z","avatar_url":"https://github.com/dojo.png","language":"TypeScript","funding_links":[],"categories":["Applications","TypeScript"],"sub_categories":[],"readme":"# @dojo/examples\n\n[![Build Status](https://travis-ci.org/dojo/examples.svg?branch=master)](https://travis-ci.org/dojo/examples)\n\nThis repository contains example applications built using Dojo.\n\nFor current progress on Dojo, contribution guidelines and other information, please visit [`dojo/meta`](https://github.com/dojo/meta).\n\n-   [Examples](#examples)\n-   [How do I contribute?](#how-do-i-contribute)\n    -   [Adding an Example](#adding-an-example)\n    -   [Installation \u0026 Testing](#installation--testing)\n    -   [Building all Examples](#building-all-examples)\n-   [Licensing information](#licensing-information)\n\n## Examples\n\nHere is a table of the current examples available in this repository complete with code and a hosted demonstration:\n\n| Example                 | Code                                       | Demo                                                     | Sandbox                                                                                          | Overview                                                                                                                                                                                    |\n| ----------------------- | ------------------------------------------ | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| TodoMVC                 | [Link](./packages/todo-mvc)                | [Link](https://examples.dojo.io/todo-mvc)                | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/todo-mvc)              | Reference implementation of [TodoMVC](http://todomvc.com/) built using Dojo packages.                                                                                                       |\n| TodoMVC (kitchen sink)  | [Link](./packages/todo-mvc-kitchensink)    | [Link](https://examples.dojo.io/todo-mvc-kitchensink)    | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/todo-mvc-kitchensink)  | Feature-enhanced version of TodoMVC built using Dojo packages.                                                                                                                              |\n| iCache Basic            | [Link](./packages/icache-basic)            | [Link](https://examples.dojo.io/icache-basic)            | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/icache-basic)          | Basic example of icache middleware usage                                                                                                                                                    |\n| iCache Advanced         | [Link](./packages/icache-advanced)         | [Link](https://examples.dojo.io/icache-advanced)         | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/icache-advanced)       | Example of getOrSet icache API and typed icache                                                                                                                                             |\n| Resize Middleware       | [Link](./packages/resize-middleware)       | [Link](https://examples.dojo.io/resize-middleware)       | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/resize-middleware)     | Demonstrates working with an element that changes dimensions                                                                                                                                |\n| HNPWA                   | [Link](./packages/hnpwa)                   | [Link](https://examples.dojo.io/hnpwa)                   | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/hnpwa)                 | Reference implementation of [HNPWA](https://hnpwa.com/) built using Dojo packages.                                                                                                          |\n| Custom Element Showcase | [Link](./packages/custom-element-showcase) | [Link](https://examples.dojo.io/custom-element-showcase) |                                                                                                  | Showcase of widgets from [@dojo/widgets](https://github.com/dojo/widgets) compiled as [custom elements](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements). |\n| Custom Element Menu     | [Link](./packages/custom-element-menu)     | [Link](https://examples.dojo.io/custom-element-menu)     |                                                                                                  | Demonstration of a menu widget compiled as a [custom element](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements).                                           |\n| Real-world Application  | [Link](./packages/realworld)               | [Link](https://examples.dojo.io/realworld)               | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/realworld)             | A real-world implementation of an existing site using Dojo packages: conduit.                                                                                                               |\n| Intersection Observer   | [Link](./packages/intersection-observer)   | [Link](https://examples.dojo.io/intersection-observer/)  | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/intersection-observer) | Demonstration of the [`Intersection`](https://github.com/dojo/widget-core#intersection) meta and how it can be used to create an infinite scrolling list.                                   |\n| Resize Observer         | [Link](./packages/resize-observer)         | [Link](https://examples.dojo.io/resize-observer/)        |                                                                                                  | Demonstration of the [`Resize`](https://github.com/dojo/widget-core#resize) meta and how it can be used to create responsive components.                                                    |\n| Dgrid Wrapper           | [Link](./packages/dgrid-wrapper)           | [Link](https://examples.dojo.io/dgrid-wrapper)           |                                                                                                  | Demonstration of the [`Dgrid Wrapper`](https://github.com/dojo/interop/tree/master/packages/src/dgrid) for running [dgrid](http://dgrid.io) in a reactive way in a modern Dojo application. |\n| World Clock             | [Link](./packages/world-clock)             | [Link](https://examples.dojo.io/world-clock)             |                                                                                                  | Demonstration of i18n in an application built using Dojo packages.                                                                                                                          |\n| Static Blog             | [Link](./packages/static-blog)             | [Link](https://examples.dojo.io/static-blog)             | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/static-blog)           | Template for creating a blog using dojo with build time rendering and blocks                                                                                                                |\n| Store Arrays            | [Link](./packages/store-arrays)            | [Link](https://examples.dojo.io/store-arrays)            | [Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/store-arrays)          | Demonstrates working with arrays in @dojo/stores                                                                                                                                            |\n\n## How Do I Contribute?\n\nWe appreciate your interest!\n\n### Adding an Example\n\nTo add an example to the project, create the example in the `packages` directory. In order to build and deploy the application there are a few required.\n\n#### Npm Scripts\n\nThere are two required npm scripts:\n\n##### build:deploy\n\nThe `build:deploy` script needs to install node modules at the beginning and remove them at the end after successfully building the example. E.g.\n\n```\n\"build:deploy\": \"npm install \u0026\u0026 dojo build --dojorc .dojorc-deploy \u0026\u0026 shx rm -rf node_modules\",\n```\n\n#### package\n\nThe `package` script needs move the built output into the correct directory in the main output/dist directory. E.g.\n\n```\n\"package\": \"shx cp -r output/dist/ ../../output/dist/hnpwa/\",\n```\n\n#### `.dojorc-deploy` file\n\nA `.dojorc-deploy` file that extends the base `.dojorc` but specifies a base of the examples directory name. E.g.\n\n```json\n{\n\t\"extends\": \".dojorc\",\n\t\"build-app\": {\n\t\t\"base\": \"/hnpwa/\"\n\t}\n}\n```\n\n### Installation \u0026 Testing\n\nRefer to each `README.md` for details on installing and testing the examples:\n\n-   [todo-mvc](./pacakges/todo-mvc/README.md)\n-   [todo-mvc-kitchensink](./pacakges/todo-mvc-kitchensink/README.md)\n-   [hnpwa](./pacakges/hnpwa/README.md)\n-   [custom-element-menu](./pacakges/custom-element-menu/README.md)\n-   [widget-showcase](./pacakges/widget-showcase/README.md)\n-   [custom-element-showcase](./pacakges/custom-element-showcase/README.md)\n-   [dojo-cli-example](./pacakges/dojo-cli-example/README.md)\n-   [Conduit RealWorld Application](./pacakges/realworld/README.md)\n-   [intersection-observer](./pacakges/intersection-observer/README.md)\n-   [resize-observer](./pacakges/resize-observer/README.md)\n-   [dgrid-wrapper](./pacakges/dgrid-wrapper/README.md)\n-   [world-clock](./pacakges/world-clock/README.md)\n\n### Building all Examples\n\nFrom the root directory, run `npm install` and then `npm run build`. The built examples are output into the `output/dist` directory at the of the product.\n\n## Licensing Information\n\n© 2018 [JS Foundation](https://js.foundation/). [New BSD](http://opensource.org/licenses/BSD-3-Clause) license.\n\n[Link](https://codesandbox.io/s/github/dojo/examples/tree/master/packages/todo-mvc) |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdojo%2Fexamples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdojo%2Fexamples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdojo%2Fexamples/lists"}