31 lines
2.1 KiB
Markdown
31 lines
2.1 KiB
Markdown
# Context: datacontroller.io (marketing site)
|
|
|
|
The public marketing website for Data Controller for SAS®, built with **Gatsby** (React + TypeScript, styled-components). It hosts the product's marketing pages, blog and feed. It is separate from the product itself (`dc`) and the product documentation (`docs.datacontroller.io`).
|
|
|
|
## What the product is
|
|
|
|
Data Controller for SAS® is a web application that lets users safely add, modify and delete data in SAS datasets and databases, with an edit-stage-approve workflow and full change history. It runs on SAS Viya, SAS 9 EBI and SASjs Server. For the product's own domain vocabulary (roles, load types, MPE control tables, validations, security), see `dc/CONTEXT.md`; for user-facing feature docs, see the `docs.datacontroller.io` repo. Treat those as the source of truth when writing copy about how the product behaves.
|
|
|
|
## Layout
|
|
|
|
- `content/blog/` - long-form articles (published at `/blog/`).
|
|
- `content/feed/` - short announcements (published at `/feed/`). See the `add-feed-post` skill.
|
|
- `src/pages/` - top-level pages (`index`, `about`, `contact`, `faq`, plus the markdown-driven `{MarkdownRemark.frontmatter__slug}.tsx`).
|
|
- `src/markdown-pages/` - standalone markdown pages (e.g. `pricing.md`).
|
|
- `src/templates/` - list/post/sidebar templates for blog and feed.
|
|
- `src/components/` - shared React components (layout, navibar, footer, hero, seo).
|
|
- `static/` - static assets served as-is; `gatsby-*.js` - Gatsby config (feed, node APIs, etc.).
|
|
|
|
## Conventions
|
|
|
|
- Use regular dashes (`-`) in content, not em-dashes.
|
|
- Blog and feed share a single combined RSS feed at `/rss.xml` (via `gatsby-plugin-feed`); new posts appear automatically on the next build.
|
|
- Lint with `npm run lint` (prettier) and typecheck with `npm run typecheck` before considering front-end changes done.
|
|
- Preview locally with `npm run develop`.
|
|
|
|
## Agent files
|
|
|
|
All agent-facing material lives under `.agents/`: skills in `.agents/skills/` (e.g. `add-feed-post`), and reference docs in `.agents/docs/` (`domain.md`, `issue-tracker.md`).
|
|
|
|
See `AGENTS.md` for agent skills, writing rules, and where these files live.
|