{"id":21497000,"url":"https://github.com/financial-times/x-dash","last_synced_at":"2026-03-04T13:03:41.043Z","repository":{"id":37933800,"uuid":"123264447","full_name":"Financial-Times/x-dash","owner":"Financial-Times","description":":x::heavy_minus_sign::newspaper: shared front-end components for FT.com and the FT Apps","archived":false,"fork":false,"pushed_at":"2025-03-20T10:26:38.000Z","size":18818,"stargazers_count":39,"open_issues_count":42,"forks_count":6,"subscribers_count":54,"default_branch":"main","last_synced_at":"2025-03-28T19:43:48.276Z","etag":null,"topics":["athloi","component","customer-products","monorepo","platforms-customer-products"],"latest_commit_sha":null,"homepage":"https://financial-times.github.io/x-dash","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Financial-Times.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-28T09:48:24.000Z","updated_at":"2025-03-20T10:23:49.000Z","dependencies_parsed_at":"2023-10-16T19:02:24.448Z","dependency_job_id":"3d1a0725-f373-486d-9173-c1d5ced1eecd","html_url":"https://github.com/Financial-Times/x-dash","commit_stats":{"total_commits":2178,"total_committers":108,"mean_commits":"20.166666666666668","dds":0.8112947658402204,"last_synced_commit":"423f76bf8debdbc34ad8ba9f13c29fbf0de6a06a"},"previous_names":[],"tags_count":360,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Financial-Times%2Fx-dash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Financial-Times%2Fx-dash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Financial-Times%2Fx-dash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Financial-Times%2Fx-dash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Financial-Times","download_url":"https://codeload.github.com/Financial-Times/x-dash/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247249524,"owners_count":20908212,"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":["athloi","component","customer-products","monorepo","platforms-customer-products"],"created_at":"2024-11-23T16:20:22.972Z","updated_at":"2026-01-26T17:07:34.841Z","avatar_url":"https://github.com/Financial-Times.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n\t\u003cimg src=\"https://user-images.githubusercontent.com/271645/38416861-1e6c6202-398e-11e8-907c-8c199a03988a.png\" width=\"200\" alt=\"\"\u003e\u003cbr\u003e\n\tx-dash\n\t\u003ca href=\"https://circleci.com/gh/Financial-Times/x-dash/tree/main\"\u003e\n\t\t\u003cimg alt=\"Build Status\" src=\"https://circleci.com/gh/Financial-Times/x-dash/tree/main.svg?style=svg\"\u003e\n\t\u003c/a\u003e\n\u003c/h1\u003e\n\nx-dash is a monorepo of shared front-end components for FT.com and the FT Apps.\n\n### ⚠️ The x-dash monorepo is deprecated. ℹ️ x-dash _components_ are still supported and maintained.\n\nNew components **should not** be added to this monorepo. Existing components **continue to be supported** and receive new features and bug fixes. In 2024 we will gradually be sunsetting the monorepo and finding new homes for the components and developer tooling.\n\n## Installing x-dash\n\n### Requirements\n\nTo get started with x-dash, you'll need to make sure you have the following software tools installed.\n\n1. [Git](https://git-scm.com/)\n2. [Node.js](https://nodejs.org/en/) (version 16–20)\n3. [npm](http://npmjs.com/) (versions 7–10)\n\nPlease note that x-dash has only been tested in Mac and Linux environments. If you are on a Mac you may find it easiest to install the [Command Line Tools](https://developer.apple.com/download/more/) package which includes Git.\n\n#### Recommended\n\nTo aid the development of interactive components with Storybook it is recommended to install the React Developer Tools for your browser. These addons aid debugging by displaying the rendered component tree and provide access to view and edit their properties:\n\n- [React Developer Tools for Chrome](https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi)\n- [React Developer Tools for Firefox](https://addons.mozilla.org/en-GB/firefox/addon/react-devtools/)\n\n\n### Project setup\n\n1. Clone the x-dash Git repository and change to the new directory that has been created:\n\n    ```bash\n    git clone git@github.com:financial-times/x-dash\n    cd x-dash\n    ```\n\n2. Install all of the project dependencies (this may take a few minutes if you are running this for the first time):\n\n    ```bash\n    npm install\n    ```\n\n3. Build the current set of x-dash components and start Storybook to view:\n\n    ```bash\n    npm run build\n    npm run start-storybook\n    ```\n\n## Working with x-dash\n\nThe project repository is a monorepo which means all of the tools, packages and components are kept in one place and can be worked upon concurrently.\n\n\n### Repository structure\n\nThe repository groups related code together in directories. UI components are stored in the `components` directory, documentation files in the `docs` directory, additional public packages in the `packages` directory.\n\n```\n├ components/\n│  └ x-component/\n│    ├ readme.md\n│    └ package.json\n├ packages/\n│  └ x-package/\n│    ├ readme.md\n│    └ package.json\n├ readme.md\n└ package.json\n```\n\n### Using Storybook\n\n[Storybook] is a development environment and showcase for UI components. It makes working on and sharing UI components easier by providing a richly configurable environment.\n\nAfter installing x-dash you can start Storybook by running the following command from the repository root:\n\n```sh\nnpm run start-storybook\n```\n\nThis command will start a server running on [local.ft.com:9001] and generate an application presenting all of the components configured to use it. Changes to these components can be updated in real-time speeding up the development process.\n\nData properties passed to these component may also be configured in-situ and these changes will be reflected in the URL making it possible to share specific configurations.\n\n[Storybook]: https://storybook.js.org/\n[local.ft.com:9001]: http://local.ft.com:9001/\n\n\n## Coding standards\n\nThe best way to ensure you stick to the x-dash code style is to make your work consistent with the code around it. We also provide a [Prettier] configuration to automatically format files and run [ESLint] before any tests. See the [contribution guide] for more information.\n\n[Prettier]: https://prettier.io/\n[ESLint]: https://eslint.org/\n[contribution guide]: https://github.com/Financial-Times/x-dash/blob/HEAD/contribution.md\n\nFor more in-depth information visit the [Wiki](https://github.com/Financial-Times/x-dash/wiki)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinancial-times%2Fx-dash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffinancial-times%2Fx-dash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinancial-times%2Fx-dash/lists"}