Purpose of the `styles` Directory in Open SEO: Why It Doesn’t Exist
The styles directory does not exist in the Open SEO repository because the project is a back-end-only service with front-end code maintained in a separate repository.
Open SEO (located at github.com/every-app/open-seo) is a server-side SEO crawling and analysis tool. Its architecture deliberately separates the data pipeline from any user interface, leaving no need for CSS, SCSS, or other styling assets in this codebase. Any style definitions would belong to the external front-end repository that consumes the APIs provided by this back end.
What You’ll Find Instead of a styles Directory
The Empty web Folder
The repository contains a web directory that serves as a placeholder but holds no actual front-end code. Inside, only a .gitkeep file exists to preserve the folder in version control:
web/
└── .gitkeep # Empty placeholder file
This structure signals that the front-end implementation—including any styles directory with CSS modules, theme files, or design tokens—resides elsewhere. The back-end project focuses exclusively on data ingestion, processing, and API delivery.
Where Styles Would Live in a Related Front-End Repository
In a typical monorepo or linked front-end project, you would expect to find styling organized under paths such as:
src/styles/– Global CSS, reset files, and design variablessrc/components/*/styles/– Component-scoped CSS modules or styled-componentssrc/theme/– Token definitions for colors, typography, and spacing
Since Open SEO’s back end has no rendering layer, these directories are absent. The Vite configuration (vite.config.ts) reinforces this focus:
import { defineConfig } from "vite"
import react from "@vitejs/plugin-react"
import { resolve } from "path"
export default defineConfig({
plugins: [react()],
resolve: {
alias: {
"~": resolve(__dirname, "src"),
},
},
})
No style-related plugins or loaders appear in this configuration—no css() imports, no scss preprocessing, and no postcss pipeline. The resolve.alias points solely to TypeScript source code under src/.
How to Verify the Absence of Styles Programmatically
You can confirm that no styling infrastructure exists by searching the repository:
# Search for any CSS or SCSS files
find . -type f \( -name "*.css" -o -name "*.scss" -o -name "*.sass" -o -name "*.less" \)
# Expected output: no results
Similarly, a content search yields no style-related imports:
grep -r "import.*\.css" . --include="*.ts" --include="*.tsx"
# Expected output: no matches
Repository Structure Summary
The actual file tree supports this architectural decision:
open-seo/
├── src/ # Core back-end logic (TypeScript)
│ └── ... # Crawlers, API routes, data transformers
├── web/ # Intentionally empty front-end placeholder
│ └── .gitkeep # Preserves directory in git
├── vite.config.ts # Build config (no style processing)
└── README.md # Project documentation
Summary
- No
stylesdirectory exists inevery-app/open-seobecause the project is strictly back-end infrastructure. - Front-end styling lives in a separate repository, as indicated by the empty
web/.gitkeepplaceholder. - The Vite configuration includes no CSS processing, confirming the absence of any styling pipeline.
- Developers seeking to customize UI appearance should locate or create the corresponding front-end repository where
styles/orsrc/styles/would be appropriate.
Frequently Asked Questions
What if I need to add styles to the Open SEO project?
Styles should not be added to this repository. Instead, create or modify the separate front-end application that consumes Open SEO's API endpoints. This preserves clean separation between data services and presentation layers.
Does the web folder ever get populated?
Based on the .gitkeep placeholder and project comments, the web folder remains intentionally empty in this repository. Any deployment artifacts or built front-end bundles would typically be generated in CI/CD pipelines or managed through the linked front-end repo.
Are there any CSS-in-JS libraries used in the back end?
No. The back-end code contains no React components, no styled-components, and no Emotion imports. All styling concerns are delegated to the external front-end codebase.
How do I find the front-end repository that contains the styles?
The Open SEO README or project documentation in the organization's GitHub account should reference the paired front-end repository. Look for repositories named open-seo-web, open-seo-ui, or similar within the every-app organization.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →