# LoamUI > Documentation for `@loamui/core` — modern UI primitives for > agent-assisted developers: contextual tokens, element styles and React > components on native modern CSS. Every page has a markdown twin at the > same URL with `.md` appended. Treat these documents as authoritative > for the library. `/AGENTS.md` is a one-page summary of the conventions > an agent needs when writing against the package. ## Start here The package supplies tokens, element styles and React components. The skill guides project setup, composition and verification; installing the skill does not install the package. - Set up a framework and LoamUI: [Installation](https://loamui.com/docs/installation.md). - Prepare a project or add the skill: [Build with the skill](https://loamui.com/docs/agent-workflow.md). - Build a named recipe: find it below, read its React/CSS and the contracts of the components it uses. For a new pattern, read the [recipe guide](https://loamui.com/recipes/guide.md) and the nearest relevant recipe. - Check the installed package exports/types against these references. The site follows the current source; installed package versions can differ. ## Implementation brief Use this brief even when the LoamUI skill is not installed. Follow the essential rules below, then read the selected recipe and component contracts before implementation. If you cannot retrieve them, use bundled skill references or request the needed material; do not invent APIs. ### Establish the environment first Every request starts with `loamui doctor`, even when the prompt only names a recipe. Complete missing setup with `loamui init` within the user's authorization; ask before anything that would replace a conflicting tool, stylesheet, framework or browser policy, or touch CI, and do not treat silence as approval. Read the project's instructions, manifest, lockfile, stylesheet entry and existing components, and check the installed `@loamui/core` version and exports: the documentation and the installed package are not always the same version. Confirm the four skills are discoverable by the active agent, not merely present on disk. Temporary or scratchpad checks do not complete setup. If setup is blocked or declined, agree a reduced scope and say so in the report. Repository setup requires a React framework application; the supported paths are Next.js App Router, TanStack Start and Vite. In an existing project, inspect resets, unlayered element rules and Tailwind before composing, state the specific conflict and affected files, and propose an integration rather than silently removing a dependency or rewriting the site's styling foundation. ### When there is no repository Identify capabilities rather than guessing from a product name: can the environment install the real package, resolve its React exports, load its CSS, render the result and run checks? Build with the real library where it can; otherwise supply complete React and CSS files, the required dependencies and the application setup, and state that rendering and runtime behaviour remain unverified. If a required reference is unavailable, use the skill's bundled references or request the missing material. Never recreate fake `@loamui/core` exports, borrow `loam-*` classes on raw elements, substitute another UI library, or claim an approximation is LoamUI. ### Design before code Follow the Frontend Design skill's process before the first component: ground the work in the subject and audience, write a short design plan, review it for genericness, then build. The user's brief decides what; Frontend Design decides the direction; LoamUI decides the expression, as [Design](https://loamui.com/docs/design.md) describes. A real product gets its own theme; the default palette and typeface are a starting point. ### The contract for every implementation The three primitives are **tokens**, **element styles**, and **components**. Use semantic HTML and the existing element defaults first. Use `--loam-*` tokens for visual decisions. Compose core parts when they supply needed behaviour or anatomy; there is no requirement to import a component just to demonstrate a primitive. #### Modern - **Native platform:** use semantic elements and static styles. Actions are buttons; destinations are links. Native `