A Design System for Open Lab research projects.
- Run the build
- Update API docs if needed
- Run
npm version minor|major|patch
- Run
npm publish
This library is used by several Open Lab projects:
- openlab.ncl.ac.uk - repo
- datadiaries.uk - repo
- alembic.openlab.dev - (this repo)
- Coffee Club
Goals
- Provide a step up (design-wise) for developers
- Reduce duplication in effort/code/work
- Improve collaboration on projects and focus evolution in the same direction
What
- A library of components and patterns
- A documentation site to describe the design system
To explore
- More accessibility concerns
- Document the reason behind decisions / solutions
- Think about adaptability, evolution and collaboration
TODO: find a better place for these
css variables
- "axioms" are single words like
--measure
- everything else is type-prefixed like
--color-background
or--border-thin
imports
module.js
is the main entrypoint, sub-modules are self-named files in their own folder e.g. lib/lib.js
or layouts/layouts.js
.
misc
- group source by the module, js + css alongside eachother is fine. It makes it easy to work on a module.
- avoid JavaScript's default exports
- sub-modules should explicitly export things, avoid
export * from '...'
-type code - pure functions where possible
- exported code prefixed with
_
(an underscore) is internal, should not be used and may change between major releases
This project was set up by puggle