From 675d8924ec2e442cd641e89eeba694472e5892f9 Mon Sep 17 00:00:00 2001 From: Brandon Clark <98107867+bclark-p44@users.noreply.github.com> Date: Thu, 17 Nov 2022 15:22:18 -0600 Subject: [PATCH] chore: adding more context to readmes (#154) * chore: adding more context to readmes * chore: adding layout blurb --- LICENSE | 18 +++ README.md | 76 +++++++-- apps/docs/public/images/logo.png | Bin 0 -> 39057 bytes package.json | 1 + packages/design-tokens/README.md | 11 +- packages/react/README.md | 134 ++++++++++++++++ packages/theme/README.md | 262 +++++++++++++++++++++++++++++++ 7 files changed, 485 insertions(+), 17 deletions(-) create mode 100644 LICENSE create mode 100644 apps/docs/public/images/logo.png diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..accb6d33 --- /dev/null +++ b/LICENSE @@ -0,0 +1,18 @@ +MIT License + +Copyright (c) 2021 project44, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and +associated documentation files (the "Software"), to deal in the Software without restriction, +including without limitation the rights to use, copy, modify, merge, publish, distribute, +sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial +portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT +NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES +OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md index 1bd4959c..e383bd83 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,78 @@ -# Manifest Design System +
+ +
-> Manifesting Project 44 experiences through design. +

Manifest Design System

+> Manifest Design System is the open source implementation of the project44 design language, used to +> build consistent, accessible and delightful products at project44. While the design language is +> closed source, the technology is open and contributions are welcomed and encouraged. + +
+ +[![Bundle Size](https://img.shields.io/bundlephobia/minzip/@project44-manifest/react/latest.svg)](https://bundlephobia.com/result?p=@project44-manifest/react@latest) [![LICENSE](https://img.shields.io/apm/l/atomic-design-ui.svg?style=flat)](https://github.com/project44/manifest/blob/main/LICENSE) +[![npm latest package](https://img.shields.io/npm/v/@project44-manifest/react/latest.svg?label=@project44-manifest/react)](https://www.npmjs.com/package/@project44-manifest/react) [![CI](https://github.com/project44/manifest/actions/workflows/ci.yml/badge.svg)](https://github.com/project44/manifest/actions/workflows/ci.yml) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://makeapullrequest.com) -## Getting Started +
+ +## Documentation -For detailed installation and usage guidelines, please see our +For usage guidelines and full documentation please visit our [documentation website](https://www.manifestdesignsystem.com). -| Package | Version | -| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| **@project44-manifest/design-tokens** | [![badge](https://img.shields.io/npm/v/@project44-manifest/design-tokens.svg?style=flat-square-square)](https://www.npmjs.com/package/@project44-manifest/design-tokens) | -| **@project44-manifest/react** | [![badge](https://img.shields.io/npm/v/@project44-manifest/react.svg?style=flat-square-square)](https://www.npmjs.com/package/@project44-manifest/react) | -| **@project44-manifest/system** | [![badge](https://img.shields.io/npm/v/@project44-manifest/system.svg?style=flat-square-square)](https://www.npmjs.com/package/@project44-manifest/system) | -| **@project44-manifest/theme** | [![badge](https://img.shields.io/npm/v/@project44-manifest/theme.svg?style=flat-square-square)](https://www.npmjs.com/package/@project44-manifest/theme) | +## Getting Started + +Just getting started? Check out [`@project44-manifest/react`](./packages/react). -## Documentation +Need something more specific? You may want to check out these packages: + +| Package name | Description | +| ------------------------------------------- | ---------------------------------------------- | +| [`design tokens`](./packages/design-tokens) | The design tokens for Manifest Design System. | +| [`react`](./packages/react) | React components, patterns and styling engine. | +| [`theme`](./packages/theme) | A theme implementing our design tokens. | + +Manifest uses [Turborepo](https://turbo.build/repo) as it's build system, to get started working +with repo install the dependencies and build the packages: + +```sh +yarn && yarn build +``` + +To run a command for a single workspace use the `--filter` tag provided by turbo. + +```sh +yarn turbo run --filter=@project44-manifest/react +``` + +Some common commands includes: + +| Command | Purpose | +| ----------------------------------------------------------- | ---------------------------------------------------------- | +| `yarn turbo run dev --filter=@project44-manifest/storybook` | Starts a development server for the react components. | +| `yarn turbo run dev --filter=@project44-manifest/doc` | Starts a development server for the documentation website. | + +The following commands will run in all packages: -- [Documentation Website](https://www.manifestdesignsystem.com) -- [Contributing](./.github/CONTRIBUTING.md) -- [Code of conduct](./.github/CODE_OF_CONDUCT.md) +| Command | Purpose | +| ---------------- | -------------------------------------------------------------------- | +| `yarn build` | Builds all the packages, tools and apps in the repo. | +| `yarn clean` | Removes build assets and caches. | +| `yarn coverage` | Generate test coverage reports for each package. | +| `yarn dev` | Runs development servers and watch for code changes within packages. | +| `yarn format` | Check code formatting. | +| `yarn lint` | Run linting. | +| `yarn test` | Run unit tests. | +| `yarn typecheck` | Validate TypeScript types. | -## 🙌 Contributing +## Contributing Contributions are always welcome!! Please review our [Contribution Guide](/.github/CONTRIBUTING.md) to get started. ## License -[MIT](/LICENSE) +Licensed under the [MIT](/LICENSE). diff --git a/apps/docs/public/images/logo.png b/apps/docs/public/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2eb73bdecd31142777e7990eac86867b328cf3d6 GIT binary patch literal 39057 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 Dk2M?{ literal 0 HcmV?d00001 diff --git a/package.json b/package.json index 27682c51..3174af43 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "workspaces": [ "apps/*", "packages/*", + "packages/react-components/*", "tools/*" ], "scripts": { diff --git a/packages/design-tokens/README.md b/packages/design-tokens/README.md index b12f6243..fb353fe7 100644 --- a/packages/design-tokens/README.md +++ b/packages/design-tokens/README.md @@ -3,7 +3,7 @@ Design Tokens for Manifest Design System, project44's design system. For a full list of tokens, please see the -[documentation website](https://www.manifestdesignsystem.com) +[documentation website](https://www.manifestdesignsystem.com/docs/tokens) ## Installation @@ -30,3 +30,12 @@ import { tokens } from '@project44-manifest/design-tokens'; console.log(tokens.color.palette.blue[50]); ``` + +## Contributing + +Contributions are always welcome!! Please review our [Contribution Guide](/.github/CONTRIBUTING.md) +to get started. + +## License + +Licensed under the [MIT](/LICENSE). diff --git a/packages/react/README.md b/packages/react/README.md index e69de29b..5cb153d2 100644 --- a/packages/react/README.md +++ b/packages/react/README.md @@ -0,0 +1,134 @@ +# @project44-manifest/react + +> A react library consisting of components, patterns and a styling engine that implement the design +> principles of the [Manifest Design System](https://www.manifestdesignsystem.com) by project44. + +## Installation + +```bash +yarn add @project44-manifest/react react react-dom +``` + +## Usage + +The `@project44-manifest/react` library includes everything you need to build experiences leveraging +the Manifest Design System. + +To start using the library start by wrapper you application with the `Provider`. + +```tsx +import { Provider } from '@project44-manifest/react'; + +function MyApp({ children }) { + return {children}; +} +``` + +This provider will initialize our `SSRProvider`, which ensures that our auto-generated id's are +consistent between the server and client. It also initializes the `OverlayProvider` that manages +overlay elements ensuring that they properly hidden from screen readers. + +### Font + +Manifest Design System was designed using [Inter](https://rsms.me/inter/) as its font. Please be +sure to include the font type in the of your application's HTML. + +```html + +``` + +### Icons + +Currently Manifest Design System uses material design icons. Please be sure to include the font type +in the of your application's HTML. + +```html + +``` + +### Accessibility + +Manifest is built with accessibility in mind, each component will assign the correct events and aria +attributes needed to meet the [WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/) guidelines. We rely +heavily on [react-aria](https://react-spectrum.adobe.com/react-aria/index.html) for provide +accessible UI primitives. + +### Polymorphism + +All Manifest components are polymorphic, meaning that each component can be rendered using a +different element or node using the `as` prop. + +```tsx +import { Button } from '@porject44-manifest/react'; + +