Skip to content

noodlestan/designer

Repository files navigation

Designer Decisions

Modeling design decisions. Schemas, transformations, visualizations, the works.

Noodlestan 🐘 Collective

We are an open collective of people dedicated to the design and software crafts: UX, design, code, web, 3d, audio, the works. Learn more about us and our projects at Noodlestan.org.

👐 Your contribution is welcome! 👐

If would like to share your ideas, report a bug, ask for improvements - or simply say hi! 👋 - don't hesitate to join us on Noodlestan's Discord or to drop us a line at hello@noodlestan.org.

How to use

📖 Documentation

If you're looking into how to setup a Design System Docs website based on Designer Decisions models and tokens, refer to our Integrations / Astro docs.

You can also start from a fully working setup by using one of the boilerplates.

Development

System requirements:

We recommended using VS Code with the following extensions: ESLint, Prettier, MDX, Github Actions, Astro, SpellRight, Generate Index

Getting started

First make sure you are using the correct node version by running nvm use.

Install dependencies with npm install.

Run a full build with npm run build:deps.

Run npm run dev in the docs directory: docs/designer-decisions/.

In this repository

Libraries:

Cli tools:

Docs:

Support tools:

Stack

This library suite targets any JS/TS stack.

Most packages are distributed both as TS modules that modern bundlers can process as well as CJS builds that Node.js and ts-node consumers can both require or import. See each package README for more details.

Documentation components and widgets are (for now) only available as Astro components and distributed in source code only.

It uses:

Documentation is built on top of Astro / Starlight.

Tools

Committing

Make sure the pre-commit hook was executed. It runs automatically before every commit and lints all code. Under the hood it runs npm run lint and npm run ci. Run these to inspect error details.

Publishing a new release

Update CHANGELOG.

Bump version and publish to npm

npm login
npm run release:prepare 0.0.8
npm run release:publish

Commit changes. Make sure package-lock.json is updated and included.

git checkout -b v0.0.8
npm install
git commit -am 'Publish version v0.0.8'
git push origin v0.0.8

Merge the release PR (example).

Tag the (merged) release commit.

git checkout main
git pull
git tag v0.0.8
git push --tags

Create the release on Github.

MIT License

Copyright (c) 2024 Noodlestan.

Published under a MIT license.