Skip to content

ENG-1605: Initial skeleton website/layout#934

Open
sid597 wants to merge 12 commits intomainfrom
eng-1605-initial-skeleton-websitelayout
Open

ENG-1605: Initial skeleton website/layout#934
sid597 wants to merge 12 commits intomainfrom
eng-1605-initial-skeleton-websitelayout

Conversation

@sid597
Copy link
Copy Markdown
Collaborator

@sid597 sid597 commented Apr 1, 2026

Non-functional skeleton matching the mockup for the extract-nodes tool.
Uses (extract) route group with own root layout, two-panel Sidebar + MainContent.
All data hardcoded — no wiring or functionality.
@linear
Copy link
Copy Markdown

linear bot commented Apr 1, 2026

@supabase
Copy link
Copy Markdown

supabase bot commented Apr 1, 2026

This pull request has been ignored for the connected project zytfjzqyijgagqxrzbmz because there are no changes detected in packages/database/supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

The border-border class from shadcn globals.css is not defined
in the extract layout's Tailwind context. The (home) layout
doesn't import it either — not needed for this skeleton.
graphite-app[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

sid597 added 3 commits April 1, 2026 21:00
- Remove <html> and <body> from (extract) layout — root layout
  already provides these. Matches (home) layout pattern.
- Align TABS counts and footer text with actual SAMPLE_NODES
  data (6 items: 3 CLM + 3 EVD).
- Add shadcn Button, Badge, Checkbox to @repo/ui
- Rewrite Sidebar: use Checkbox, Button; node types now match
  discourse graph ontology (CLM, QUE, HYP, EVD, RES, SRC, THE)
  with candidateTag field per ENG-1603 spec shape
- Rewrite MainContent: use Badge for type labels, Checkbox for
  selection, Button for actions
- Remove prototype node types (EXP, MTD, PAT, CON, ISS, ART)
  that don't exist in the ontology
devin-ai-integration[bot]

This comment was marked as resolved.

sid597 added 2 commits April 1, 2026 21:57
Align shadcn-generated code with repo conventions:
interface → type, function → arrow, prettier formatting.
Sidebar: NODE_TYPES with all ENG-1603 fields (label, description,
candidateTag, color) colocated in component.

MainContent: SAMPLE_NODES with all ENG-1601 fields (nodeType,
content, supportSnippet, sourceSection) colocated in component.
supportSnippet shown inline. Colors looked up from nodeType.

Removed sampleData.ts — shared types will be a Zod schema later.
devin-ai-integration[bot]

This comment was marked as resolved.

sid597 added 3 commits April 1, 2026 22:25
- All 7 node types checked in sidebar
- Sample extracted nodes for every type (claim, evidence,
  question, hypothesis, result, source, theory)
- First 2 cards show expanded supportSnippet, rest collapsed
- Buttons use explicit dark gradient instead of shadcn theme
Use Button from @repo/ui with className overrides for
slate-900 dark theme instead of raw HTML buttons.
Sidebar: shadcn Checkbox replaces custom colored checkboxes.
MainContent: Card+CardContent for result cards, Badge for
filter tabs, Checkbox for selection, Button variant=ghost
for show/hide details. Colored inline style only on the
nodeType pill in each result card.
devin-ai-integration[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

@sid597 sid597 requested a review from mdroidian April 2, 2026 16:23
})),
];

// eslint-disable-next-line @typescript-eslint/naming-convention
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be required anymore

const SECTION_LABEL_CLASS =
"mb-3 block px-1 text-[18px] font-semibold tracking-[-0.016em] text-slate-800";

// eslint-disable-next-line @typescript-eslint/naming-convention
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be required anymore

type BadgeProps = React.HTMLAttributes<HTMLDivElement> &
VariantProps<typeof badgeVariants>;

// eslint-disable-next-line @typescript-eslint/naming-convention
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be required anymore

asChild?: boolean;
};

// eslint-disable-next-line @typescript-eslint/naming-convention
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be required anymore

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants