{"id":15015939,"url":"https://github.com/ember-learn/ember-cli-addon-docs-yuidoc","last_synced_at":"2025-07-10T16:03:36.680Z","repository":{"id":29706827,"uuid":"122550430","full_name":"ember-learn/ember-cli-addon-docs-yuidoc","owner":"ember-learn","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-10T07:25:17.000Z","size":4136,"stargazers_count":10,"open_issues_count":15,"forks_count":10,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-06-02T06:07:09.061Z","etag":null,"topics":["ember","emberjs","hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/ember-learn.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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,"zenodo":null}},"created_at":"2018-02-23T00:00:33.000Z","updated_at":"2024-05-30T03:19:28.000Z","dependencies_parsed_at":"2024-06-18T15:34:33.967Z","dependency_job_id":"457d089f-2d14-458f-bba6-e532fe628bf1","html_url":"https://github.com/ember-learn/ember-cli-addon-docs-yuidoc","commit_stats":{"total_commits":79,"total_committers":13,"mean_commits":6.076923076923077,"dds":0.5189873417721519,"last_synced_commit":"034d0eb23bade8646df51c4ba6bb049def8dfc48"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/ember-learn/ember-cli-addon-docs-yuidoc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ember-learn%2Fember-cli-addon-docs-yuidoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ember-learn%2Fember-cli-addon-docs-yuidoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ember-learn%2Fember-cli-addon-docs-yuidoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ember-learn%2Fember-cli-addon-docs-yuidoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ember-learn","download_url":"https://codeload.github.com/ember-learn/ember-cli-addon-docs-yuidoc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ember-learn%2Fember-cli-addon-docs-yuidoc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264604352,"owners_count":23635853,"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":["ember","emberjs","hacktoberfest"],"created_at":"2024-09-24T19:48:11.120Z","updated_at":"2025-07-10T16:03:36.629Z","avatar_url":"https://github.com/ember-learn.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![This project uses GitHub Actions for continuous integration.](https://github.com/ember-learn/ember-cli-addon-docs-yuidoc/workflows/CI/badge.svg)](https://github.com/ember-learn/ember-cli-addon-docs-yuidoc/actions?query=workflow%3ACI)\n\nember-cli-addon-docs-yuidoc\n==============================================================================\n\n[YUIDoc](https://github.com/yui/yuidoc) plugin for Ember CLI Addon Docs. This\nplugin adds automatic API documentation to your addon through a modified\nversion of YUIDoc with support for:\n\n* Modules\n* Plain, non-class functions and constants\n* Classes\n  * Added support for accessors and fields\n* Components (including arguments and yields)\n* Helper functions\n* Markdown in comments\n\n\nCompatibility\n------------------------------------------------------------------------------\n\n* Ember.js v3.16 or above\n* Ember CLI v2.13 or above\n* Node.js v10 or above\n\n\nInstallation\n------------------------------------------------------------------------------\n\n```\nember install ember-cli-addon-docs-yuidoc\n```\n\n\nUsage\n------------------------------------------------------------------------------\n\n### Documenting a Class\n\nYou can document classes using standard YUIDoc syntax with a few modifications\n\n* You can use `@field` as an alias for `@property`\n* You can use `@accessor` to reference a native getter/setter, or `@computed`\nfor an Ember computed. These document the same, but `@computed` assumes a\nsetter exists, whereas `@accessor` requires you to add the `@set` tag.\n* You can add `@static`, `@async`, and `@generator` modifiers to methods\n\n```js\n/**\n  A foo class\n\n  @class Foo\n  @anArbitraryTag\n  @public\n*/\nexport default class Foo {\n  /**\n    A field named foo\n\n    @field foo\n    @type number\n  */\n  foo = 123;\n\n  /**\n    An accessor named baz\n\n    @accessor baz\n    @type any\n    @set\n  */\n  get bar() {\n    return this._baz;\n  }\n\n  set bar(val) {\n    this._baz = val;\n  }\n\n  /**\n    A static async method named grault\n\n    @method grault\n    @static\n    @async\n  */\n  static async baz() {\n    // ...\n  }\n}\n```\n\n### Documenting Components\n\nComponents can be documented the same as classes, and will be automatically\ndetected based on folder structure. They also have two extra types of\nproperties:\n\n* `@yield` which must be applied to the class itself\n* `@argument` which is meant to represent an argument passed into the\ncomponent\n\n~~~js\n/**\n  A foo-bar component. Usage:\n\n  ```hbs\n    {{#foo-bar baz=123 as |hash|}}\n\n    {{/foo-bar}}\n  ```\n\n  @class FooBarComponent\n  @yield {Hash} hash\n  @yield {number} hash.foo\n*/\nexport default Ember.Component.extend({\n  /**\n    @argument baz\n    @type {number}\n  */\n  baz: -1\n});\n~~~\n\n### Documenting Modules\n\nModules will automatically be detected - no need to use `@module`. You can use\nthe following tags:\n\n* `@function` documents plain functions\n* `@variable`, `@const`, or `@constant` documents variable values\n* `@export [named|default]` specifies the export type\n  * Classes are considered the default export unless specified otherwise,\n  functions and variables are considered named unless specified otherwwise.\n\n```js\n/**\n  @class Foo\n  @export named\n*/\nexport class Foo {}\n\n/**\n  @function bar\n  @export default\n*/\nexport default function bar() {}\n\n/**\n  @const baz\n  @type {number}\n*/\nexport const baz = 123;\n```\n\nContributing\n------------------------------------------------------------------------------\n\nSee the [Contributing](CONTRIBUTING.md) guide for details.\n\n\nLicense\n------------------------------------------------------------------------------\n\nThis project is licensed under the [MIT License](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fember-learn%2Fember-cli-addon-docs-yuidoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fember-learn%2Fember-cli-addon-docs-yuidoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fember-learn%2Fember-cli-addon-docs-yuidoc/lists"}