{"id":14959226,"url":"https://github.com/eliancodes/brutal","last_synced_at":"2025-04-08T09:13:16.611Z","repository":{"id":103649035,"uuid":"604960993","full_name":"ElianCodes/brutal","owner":"ElianCodes","description":"A neobrutalism Astro starter theme","archived":false,"fork":false,"pushed_at":"2025-04-07T12:34:38.000Z","size":2002,"stargazers_count":387,"open_issues_count":6,"forks_count":58,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-08T09:12:50.659Z","etag":null,"topics":["astro","theme","typescript","unocss"],"latest_commit_sha":null,"homepage":"https://brutal.elian.codes/","language":"Astro","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ElianCodes.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"eliancodes"}},"created_at":"2023-02-22T06:24:36.000Z","updated_at":"2025-04-07T12:34:40.000Z","dependencies_parsed_at":"2023-12-19T15:11:30.581Z","dependency_job_id":"e3f6c57c-ad46-49f4-bafa-473cb79051de","html_url":"https://github.com/ElianCodes/brutal","commit_stats":{"total_commits":159,"total_committers":12,"mean_commits":13.25,"dds":"0.46540880503144655","last_synced_commit":"7e4648f2e26ee557305431d5160b67c3ebcf531d"},"previous_names":[],"tags_count":6,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElianCodes%2Fbrutal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElianCodes%2Fbrutal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElianCodes%2Fbrutal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ElianCodes%2Fbrutal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ElianCodes","download_url":"https://codeload.github.com/ElianCodes/brutal/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247809964,"owners_count":20999816,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astro","theme","typescript","unocss"],"created_at":"2024-09-24T13:19:11.384Z","updated_at":"2025-04-08T09:13:16.571Z","avatar_url":"https://github.com/ElianCodes.png","language":"Astro","funding_links":["https://github.com/sponsors/eliancodes"],"categories":[],"sub_categories":[],"readme":"# Brutal - The neobrutalist Astro theme\n\nBrutal is a minimal neobrutalist theme for [Astro](https://astro.build/). It's based on Neobrutalist Web Design, a movement that aims to create websites with a minimalistic and functional design. It has some integrations like Image Optimization, RSS, Sitemap, ready to get your SEO done right.\n\nThe theme has no JavaScript integration out of the box, but can always be added of course.\n\nThis template is based on [my own personal website](\u003chttps://www.elian.codes/\u003e), with some more generic things added.\n\n## Usage\n\nYou can bootstrap a new Astro project using Brutal with the following command:\n\n```bash\n# npm\nnpm create astro@latest -- --template eliancodes/brutal\n\n# pnpm\npnpm create astro@latest --template eliancodes/brutal\n\n# yarn\nyarn create astro --template eliancodes/brutal\n```\n\n### Commands\n\nAll commands are run from the root of the project, from a terminal:\n\n(Here I use PNPM, no problem if you use NPM or Yarn)\n\n| Command             | Action                                             |\n| :------------------ | :------------------------------------------------- |\n| `pnpm install`      | Installs dependencies                              |\n| `pnpm dev`          | Starts local dev server at `localhost:4321`        |\n| `pnpm build`        | Build your production site to `./dist/`            |\n| `pnpm preview`      | Preview your build locally, before deploying       |\n| `pnpm astro ...`    | Run CLI commands like `astro add`, `astro preview` |\n| `pnpm astro --help` | Get help using the Astro CLI                       |\n\n## Integrations\n\n### UnoCSS\n\nIn this theme, I'm using [UnoCSS](https://uno.antfu.me/) to generate the CSS. It's a utility-first CSS framework that uses a single class to style elements. It's very easy to use and has a lot of features. It's setup to be completely compatible with TailwindCSS, with the advantage of being able to use PureCSS icons. You can always switch out UnoCSS for TailwindCSS if you want to, without breaking the general styles.\n\n### Sitemap\n\nTo generate the sitemap, you don't need to do anything. It's automatically generated when you build your site. You'll just need to switch out the `site` on `astro.config.ts` to your own.\n\n```js title=\"astro.config.mjs\"\nimport { defineConfig } from 'astro/config';\n\nexport default defineConfig({\n  site: 'https://example.com',\n});\n```\n\n### RSS\n\nThe RSS feed is automatically generated from the Markdown files in the `src/content/blog` folder. You can ofcourse completely change this to your own needs.\n\nThe RSS will output to `https://example.com/feed.xml` by default. You can change this, by renaming `src/pages/feed.xml.js`.\n\n### Image\n\n## Components\n\n### `components/blog/`\n\nThis directory contains all components for the blog.\n\n### `components/errors/`\n\nThis directory contains all error components.\n\n#### `components/errors/404.astro`\n\nThis component is used when a page is not found.\n\n### `components/generic/`\n\nThis directory contains all generic components, reused over multiple pages.\n\n### `components/home/`\n\nThis directory contains all components for the home page.\n\n### `components/layout/`\n\nThis directory contains all layout components. For instance, the header and footer and `\u003chead\u003e` section.\n\nIf you need more from this theme, don't hesitate to open an issue or reach out to me!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliancodes%2Fbrutal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feliancodes%2Fbrutal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliancodes%2Fbrutal/lists"}