# What Is the Purpose of the `src` Directory in Nutlope/hallmark?

> Discover why the Nutlope/hallmark repository lacks a src directory. Learn how its static markdown and web assets eliminate the need for source trees and build compilation.

- Repository: [Hassan El Mghari/hallmark](https://github.com/Nutlope/hallmark)
- Tags: how-to-guide
- Published: 2026-08-10

---

**The Nutlope/hallmark repository intentionally contains no `src` directory because it is a static design skill distributed as plain markdown and web assets, eliminating the need for a separate source tree or build compilation step.**

Hallmark is an open-source design skill that helps developers extract the visual "DNA" of websites. Unlike conventional JavaScript or TypeScript projects that organize compiled code under a `src` folder, this repository uses a flat, content-first architecture where source files reside directly in topical directories.

## Repository Structure: Where the Source Code Lives

According to the repository's file tree, Hallmark organizes its assets into three primary top-level folders rather than a monolithic `src` directory:

- **`site/`** — Contains the static website (HTML, CSS, and JavaScript) that powers the live demo interface. The entry point is [`site/index.html`](https://github.com/Nutlope/hallmark/blob/main/site/index.html).
- **`skills/hallmark/`** — Houses the core skill definition ([`SKILL.md`](https://github.com/Nutlope/hallmark/blob/main/SKILL.md)) and all design-reference markdown files consumed by AI agents.
- **`docs/`** — Stores documentation, worked examples, screenshots, and usage guides.

This structure reflects Hallmark's purpose as a **static design skill** with no build step or compiled language requirements.

## Why Hallmark Omits a Traditional `src` Directory

Traditional software projects use a `src` directory to separate source code from build artifacts, compiled binaries, or distribution files. Hallmark operates differently because the skill is distributed as raw markdown and static web assets.

Because there is no compilation process—no transpiling TypeScript to JavaScript or bundling modules—the project places "source" files directly in their functional locations. The [`package.json`](https://github.com/Nutlope/hallmark/blob/main/package.json) at the repository root serves as the npm metadata entry point for `npx` installation, bypassing the need for a nested source tree.

## Accessing Hallmark Without a `src` Directory

Since the source files live in top-level directories, you interact with Hallmark using these commands:

```bash

# Install the skill via npx (pulls the entire repository)

npx skills add nutlope/hallmark

```

```bash

# Launch the local demo (entry point is the static HTML)

open site/index.html

```

```bash

# Run a design audit from the command line

hallmark audit path/to/your/project

```

None of these operations reference a `src` folder because the executable logic and content are already exposed in `site/`, `skills/hallmark/`, and the root configuration.

## Core Source Files and Their Locations

The repository's architecture places critical implementation details in these specific paths rather than a centralized `src` folder:

- **[`skills/hallmark/SKILL.md`](https://github.com/Nutlope/hallmark/blob/main/skills/hallmark/SKILL.md)** — Contains the core skill definition that AI agents consume to understand design extraction workflows.
- **[`site/index.html`](https://github.com/Nutlope/hallmark/blob/main/site/index.html)** — Serves as the main entry point for the live demo website.
- **[`package.json`](https://github.com/Nutlope/hallmark/blob/main/package.json)** — Provides npm metadata used when installing the skill via `npx`.
- **[`docs/recipes.md`](https://github.com/Nutlope/hallmark/blob/main/docs/recipes.md)** — Documents worked examples showing how to apply the skill.
- **[`docs/study-examples.md`](https://github.com/Nutlope/hallmark/blob/main/docs/study-examples.md)** — Provides sample studies that illustrate the "DNA" extraction methodology.

## Summary

- The Nutlope/hallmark repository **deliberately excludes** a `src` directory.
- Source assets are organized into **`site/`**, **`skills/hallmark/`**, and **`docs/`** at the repository root.
- As a static design skill, Hallmark requires **no build step**, making a separate source tree unnecessary.
- Entry points like [`site/index.html`](https://github.com/Nutlope/hallmark/blob/main/site/index.html) and [`skills/hallmark/SKILL.md`](https://github.com/Nutlope/hallmark/blob/main/skills/hallmark/SKILL.md) are immediately accessible without compilation.

## Frequently Asked Questions

### Does Nutlope/hallmark use a `src` directory for its source code?

No. The repository contains no `src` folder. All source files—including the skill definition, static website, and documentation—are stored directly in top-level directories like `skills/hallmark/` and `site/`.

### Where is the main entry point for the Hallmark skill?

The primary entry point depends on your use case. For the web demo, open [`site/index.html`](https://github.com/Nutlope/hallmark/blob/main/site/index.html). For the AI skill definition, reference [`skills/hallmark/SKILL.md`](https://github.com/Nutlope/hallmark/blob/main/skills/hallmark/SKILL.md). For npm-based installation, the [`package.json`](https://github.com/Nutlope/hallmark/blob/main/package.json) at the repository root handles the entry configuration.

### Why don't static skills need a `src` folder?

Static skills distribute content in its final form (markdown, HTML, CSS) without requiring compilation, transpilation, or bundling. Since there is no build process generating distribution files from source files, the content can reside directly in its functional location rather than a separate `src` tree.

### How do I install Hallmark if there's no `src` directory?

Install the skill using `npx skills add nutlope/hallmark`. The command pulls the entire repository, and the [`package.json`](https://github.com/Nutlope/hallmark/blob/main/package.json) metadata points to the appropriate files in `skills/hallmark/` and `site/` without requiring a `src` path.