Chore: add new theme and cleanup (#61)
This commit is contained in:
commit
7e29bd8fdc
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
"@matthiesenxyz/create-astro-ghostcms": patch
|
||||
"@matthiesenxyz/astro-ghostcms": patch
|
||||
---
|
||||
|
||||
cleanup and add new theme
|
|
@ -11,9 +11,11 @@
|
|||
"lint:fix": "biome check --apply .",
|
||||
"ci:version": "pnpm changeset version",
|
||||
"ci:publish": "pnpm changeset publish",
|
||||
"ci:test:api": "pnpm --filter astro-ghostcms test:ci", "test:api": "pnpm --filter astro-ghostcms test",
|
||||
"ci:test:api": "pnpm --filter astro-ghostcms test:ci",
|
||||
"test:api": "pnpm --filter astro-ghostcms test",
|
||||
"test:api:watch": "pnpm --filter astro-ghostcms test:watch",
|
||||
"test:api:coverage": "pnpm --filter astro-ghostcms test:coverage"
|
||||
"test:api:coverage": "pnpm --filter astro-ghostcms test:coverage",
|
||||
"test:create": "pnpm --filter create-astro-ghostcms test"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@biomejs/biome": "1.5.3",
|
||||
|
|
|
@ -47,13 +47,15 @@
|
|||
],
|
||||
"exports": {
|
||||
".": "./index.ts",
|
||||
"./api": "./src/api/index.ts",
|
||||
"./api": {
|
||||
"types": "./src/api/index.ts",
|
||||
"default": "./src/api/index.ts"
|
||||
},
|
||||
"./api-core": "./src/api/content-api/index.ts",
|
||||
"./config": {
|
||||
"default": "./src/integrations/virtual-config.ts",
|
||||
"types": "./src/integrations/virtual.d.ts"
|
||||
"types": "./src/integrations/virtual.d.ts",
|
||||
"default": "./src/integrations/virtual-config.ts"
|
||||
},
|
||||
"./types": "./types.d.ts",
|
||||
"./satoriOG": "./src/integrations/satori.ts",
|
||||
"./404.astro": "./src/default-routes/404/404.astro",
|
||||
"./rss.xml.ts": "./src/default-routes/rss.xml.ts",
|
||||
|
|
|
@ -31,4 +31,5 @@ npx @matthiesenxyz/create-astro-ghostcms --<arg>
|
|||
| ------------ | ----------------------------------------------------- |
|
||||
| `basic` | Basic Setup with astro-ghostcms and theme-default |
|
||||
| `catppuccin` | Integration w/ Catppuccin & TailwindCSS |
|
||||
| `brutal` | Integration w/ BrutalbyElian & UnoCSS |
|
||||
| `starterkit` | Integration in API-Only Mode with customizable theme |
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
export interface Context {
|
||||
dryRun: boolean;
|
||||
installDeps: boolean;
|
||||
initGitRepo: boolean;
|
||||
template: string;
|
||||
pkgManager: "npm" | "yarn" | "pnpm" | null;
|
||||
args: string[];
|
||||
}
|
||||
|
||||
export type Template = ["basic", "starterkit", "catppuccin"];
|
|
@ -7,10 +7,9 @@
|
|||
"bin": {
|
||||
"create-astro-ghostcms": "./create-astro-ghostcms.mjs"
|
||||
},
|
||||
"exports": {
|
||||
".": "./create-astro-ghostcms.mjs"
|
||||
"scripts": {
|
||||
"test": "node . --dry"
|
||||
},
|
||||
"scripts": {},
|
||||
"sideEffects": false,
|
||||
"author": {
|
||||
"email": "adam@matthiesen.xyz",
|
||||
|
|
|
@ -100,6 +100,12 @@ export async function main() {
|
|||
c.italic("Integration w/ Catppuccin TailwindCSS theme"),
|
||||
)}`,
|
||||
},
|
||||
{
|
||||
value: "brutal",
|
||||
label: `${c.magenta("BrutalbyElian")} - ${c.cyan(
|
||||
c.italic("Integration w/ BrutalbyElian UnoCSS theme"),
|
||||
)}`,
|
||||
},
|
||||
{
|
||||
value: "starterkit",
|
||||
label: `${c.magenta("Starter Kit")} - ${c.cyan(
|
||||
|
@ -135,6 +141,9 @@ export async function main() {
|
|||
case "catppuccin":
|
||||
await createProject(ctx).catch(console.error);
|
||||
break;
|
||||
case "brutal":
|
||||
await createProject(ctx).catch(console.error);
|
||||
break;
|
||||
default:
|
||||
throw new Error(c.red(`Unknown template: ${template}`));
|
||||
}
|
||||
|
@ -160,11 +169,11 @@ function getHelp() {
|
|||
* @returns {template is Template}
|
||||
*/
|
||||
function isValidTemplate(template) {
|
||||
return ["basic", "starterkit"].includes(template);
|
||||
return ["basic", "starterkit", "catppuccin", "brutal"].includes(template);
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../types.js").Template} Template
|
||||
* @typedef {import("../types.js").PackageManager} PackageManager
|
||||
* @typedef {import("../types.js").Context} Context
|
||||
* @typedef {import("./types.js").Template} Template
|
||||
* @typedef {import("./types.js").PackageManager} PackageManager
|
||||
* @typedef {import("./types.js").Context} Context
|
||||
*/
|
||||
|
|
|
@ -11,8 +11,6 @@ import {
|
|||
wait,
|
||||
} from "../utils/index.js";
|
||||
|
||||
//const runnerName = "basic";
|
||||
|
||||
/** @param {Context} ctx */
|
||||
export async function createProject(ctx) {
|
||||
let { args, dryRun, initGitRepo, installDeps, template } = ctx;
|
||||
|
@ -276,8 +274,8 @@ function isValidProjectName(projectName) {
|
|||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../../types.js").Template} Template
|
||||
* @typedef {import("../../types.js").PackageManager} PackageManager
|
||||
* @typedef {import("../../types.js").Context} Context
|
||||
* @typedef {import("../../types.js").Serializable} Serializable
|
||||
* @typedef {import("../types.js").Template} Template
|
||||
* @typedef {import("../types.js").PackageManager} PackageManager
|
||||
* @typedef {import("../types.js").Context} Context
|
||||
* @typedef {import("../types.js").Serializable} Serializable
|
||||
*/
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 Matthiesen XYZ
|
||||
Copyright (c) 2024 MatthiesenXYZ - Astro-GhostCMS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
node_modules
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 MatthiesenXYZ - Astro-GhostCMS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
|
@ -0,0 +1,11 @@
|
|||
# Astro-GhostCMS Demo Template
|
||||
|
||||
[Demo](https://brutal-demo.astro-ghostcms.xyz/)
|
||||
|
||||
This Repo is a Demo Website for the [@matthiesenxyz/astro-ghostcms](https://github.com/MatthiesenXYZ/astro-ghostcms) integraion.
|
||||
|
||||
|
||||
### For more information Check our website
|
||||
|
||||
[Astro-GhostCMS.xyz](https://astro-ghostcms.xyz)
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
import { defineConfig } from "astro/config";
|
||||
import ghostcms from "@matthiesenxyz/astro-ghostcms";
|
||||
import UnoCSS from 'unocss/astro';
|
||||
|
||||
// https://astro.build/config
|
||||
export default defineConfig({
|
||||
site: "https://example.xyz/",
|
||||
trailingSlash: 'ignore',
|
||||
integrations: [
|
||||
UnoCSS({ injectReset: true }),
|
||||
ghostcms({
|
||||
theme: "@matthiesenxyz/astro-ghostcms-brutalbyelian",
|
||||
ghostURL: "https://ghostdemo.matthiesen.xyz",
|
||||
})
|
||||
],
|
||||
});
|
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
"name": "{{PROJECT_NAME}}",
|
||||
"type": "module",
|
||||
"version": "0.0.1",
|
||||
"scripts": {
|
||||
"dev": "astro dev",
|
||||
"start": "astro dev",
|
||||
"build": "astro check && astro build",
|
||||
"preview": "astro preview",
|
||||
"astro": "astro"
|
||||
},
|
||||
"dependencies": {
|
||||
"astro": "^4.3.2",
|
||||
"@matthiesenxyz/astro-ghostcms": "^3.2.2",
|
||||
"@matthiesenxyz/astro-ghostcms-brutalbyelian": "^0.0.5",
|
||||
"@unocss/astro": "^0.57.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@astrojs/check": "^0.4.1",
|
||||
"@unocss/reset": "^0.57.7",
|
||||
"typescript": "^5.3.3",
|
||||
"postcss": "8.4.35",
|
||||
"unocss": "^0.57.7"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
|
||||
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
|
||||
<style>
|
||||
path { fill: #000; }
|
||||
@media (prefers-color-scheme: dark) {
|
||||
path { fill: #FFF; }
|
||||
}
|
||||
</style>
|
||||
</svg>
|
After Width: | Height: | Size: 749 B |
|
@ -0,0 +1,9 @@
|
|||
/// <reference types="astro/client" />
|
||||
interface ImportMetaEnv {
|
||||
readonly CONTENT_API_KEY: string
|
||||
readonly CONTENT_API_URL: string
|
||||
}
|
||||
|
||||
interface ImportMeta {
|
||||
readonly env: ImportMetaEnv;
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"extends": "astro/tsconfigs/strict",
|
||||
"exclude": ["dist"]
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
import brutalTheme from '@matthiesenxyz/astro-ghostcms-brutalbyelian';
|
||||
import { defineConfig } from 'unocss';
|
||||
|
||||
export default defineConfig({
|
||||
presets: [ brutalTheme() ],
|
||||
});
|
|
@ -1,6 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 Matthiesen XYZ
|
||||
Copyright (c) 2024 MatthiesenXYZ - Astro-GhostCMS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2024 Adam Matthiesen
|
||||
Copyright (c) 2024 MatthiesenXYZ - Astro-GhostCMS
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
export * from "./index";
|
||||
|
||||
export interface Context {
|
||||
dryRun: boolean;
|
||||
installDeps: boolean;
|
||||
initGitRepo: boolean;
|
||||
template: string;
|
||||
pkgManager: "npm" | "yarn" | "pnpm" | null;
|
||||
args: string[];
|
||||
}
|
||||
|
||||
export type PackageManager = "npm" | "yarn" | "pnpm";
|
||||
export type Serializable = string | object | number | boolean | bigint;
|
||||
export type Template = ["basic", "starterkit", "catppuccin", "brutal"];
|
|
@ -33,7 +33,7 @@ export function isPackageManager(str) {
|
|||
}
|
||||
|
||||
/**
|
||||
* @typedef {import("../../types").PackageManager} PackageManager
|
||||
* @typedef {import("../types.js").PackageManager} PackageManager
|
||||
*/
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
export * from "./index";
|
||||
export type PackageManager = "npm" | "yarn" | "pnpm";
|
||||
export type Serializable = string | object | number | boolean | bigint;
|
Loading…
Reference in New Issue