create-manifest 1.3.4 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +40 -21
  2. package/index.js +51 -0
  3. package/package.json +11 -89
  4. package/starter/.claude/settings.local.json +23 -0
  5. package/starter/.env.example +1 -0
  6. package/starter/README.md +26 -0
  7. package/starter/components.json +24 -0
  8. package/starter/package.json +42 -0
  9. package/starter/src/flows/list-pokemons.flow.ts +129 -0
  10. package/starter/src/server.ts +169 -0
  11. package/starter/src/web/PokemonList.tsx +126 -0
  12. package/starter/src/web/components/blog-post-card.tsx +288 -0
  13. package/starter/src/web/components/blog-post-list.tsx +291 -0
  14. package/starter/src/web/components/payment-methods.tsx +201 -0
  15. package/starter/src/web/components/table.tsx +478 -0
  16. package/starter/src/web/components/ui/.gitkeep +0 -0
  17. package/starter/src/web/components/ui/button.tsx +62 -0
  18. package/starter/src/web/components/ui/checkbox.tsx +30 -0
  19. package/starter/src/web/globals.css +98 -0
  20. package/starter/src/web/hooks/.gitkeep +0 -0
  21. package/starter/src/web/lib/utils.ts +6 -0
  22. package/starter/src/web/root.tsx +36 -0
  23. package/starter/src/web/tsconfig.json +3 -0
  24. package/starter/tsconfig.json +25 -0
  25. package/starter/tsconfig.web.json +24 -0
  26. package/starter/vite.config.ts +37 -0
  27. package/assets/monorepo/README.md +0 -52
  28. package/assets/monorepo/api-package.json +0 -9
  29. package/assets/monorepo/api-readme.md +0 -50
  30. package/assets/monorepo/manifest.yml +0 -34
  31. package/assets/monorepo/root-package.json +0 -15
  32. package/assets/monorepo/web-package.json +0 -10
  33. package/assets/monorepo/web-readme.md +0 -9
  34. package/assets/standalone/README.md +0 -50
  35. package/assets/standalone/api-package.json +0 -9
  36. package/assets/standalone/manifest.yml +0 -34
  37. package/bin/dev.cmd +0 -3
  38. package/bin/dev.js +0 -5
  39. package/bin/run.cmd +0 -3
  40. package/bin/run.js +0 -5
  41. package/dist/commands/index.d.ts +0 -65
  42. package/dist/commands/index.js +0 -480
  43. package/dist/index.d.ts +0 -1
  44. package/dist/index.js +0 -1
  45. package/dist/utils/GetBackendFileContent.d.ts +0 -1
  46. package/dist/utils/GetBackendFileContent.js +0 -21
  47. package/dist/utils/GetLatestPackageVersion.d.ts +0 -1
  48. package/dist/utils/GetLatestPackageVersion.js +0 -5
  49. package/dist/utils/UpdateExtensionJsonFile.d.ts +0 -6
  50. package/dist/utils/UpdateExtensionJsonFile.js +0 -8
  51. package/dist/utils/UpdatePackageJsonFile.d.ts +0 -18
  52. package/dist/utils/UpdatePackageJsonFile.js +0 -21
  53. package/dist/utils/UpdateSettingsJsonFile.d.ts +0 -4
  54. package/dist/utils/UpdateSettingsJsonFile.js +0 -6
  55. package/dist/utils/helpers.d.ts +0 -1
  56. package/dist/utils/helpers.js +0 -11
  57. package/oclif.manifest.json +0 -47
@@ -0,0 +1,62 @@
1
+ import * as React from "react"
2
+ import { Slot } from "@radix-ui/react-slot"
3
+ import { cva, type VariantProps } from "class-variance-authority"
4
+
5
+ import { cn } from "@/lib/utils"
6
+
7
+ const buttonVariants = cva(
8
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
9
+ {
10
+ variants: {
11
+ variant: {
12
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
13
+ destructive:
14
+ "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
15
+ outline:
16
+ "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
17
+ secondary:
18
+ "bg-secondary text-secondary-foreground hover:bg-secondary/80",
19
+ ghost:
20
+ "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
21
+ link: "text-primary underline-offset-4 hover:underline",
22
+ },
23
+ size: {
24
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
25
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
26
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
27
+ icon: "size-9",
28
+ "icon-sm": "size-8",
29
+ "icon-lg": "size-10",
30
+ },
31
+ },
32
+ defaultVariants: {
33
+ variant: "default",
34
+ size: "default",
35
+ },
36
+ }
37
+ )
38
+
39
+ function Button({
40
+ className,
41
+ variant = "default",
42
+ size = "default",
43
+ asChild = false,
44
+ ...props
45
+ }: React.ComponentProps<"button"> &
46
+ VariantProps<typeof buttonVariants> & {
47
+ asChild?: boolean
48
+ }) {
49
+ const Comp = asChild ? Slot : "button"
50
+
51
+ return (
52
+ <Comp
53
+ data-slot="button"
54
+ data-variant={variant}
55
+ data-size={size}
56
+ className={cn(buttonVariants({ variant, size, className }))}
57
+ {...props}
58
+ />
59
+ )
60
+ }
61
+
62
+ export { Button, buttonVariants }
@@ -0,0 +1,30 @@
1
+ import * as React from "react"
2
+ import * as CheckboxPrimitive from "@radix-ui/react-checkbox"
3
+ import { CheckIcon } from "lucide-react"
4
+
5
+ import { cn } from "@/lib/utils"
6
+
7
+ function Checkbox({
8
+ className,
9
+ ...props
10
+ }: React.ComponentProps<typeof CheckboxPrimitive.Root>) {
11
+ return (
12
+ <CheckboxPrimitive.Root
13
+ data-slot="checkbox"
14
+ className={cn(
15
+ "peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
16
+ className
17
+ )}
18
+ {...props}
19
+ >
20
+ <CheckboxPrimitive.Indicator
21
+ data-slot="checkbox-indicator"
22
+ className="grid place-content-center text-current transition-none"
23
+ >
24
+ <CheckIcon className="size-3.5" />
25
+ </CheckboxPrimitive.Indicator>
26
+ </CheckboxPrimitive.Root>
27
+ )
28
+ }
29
+
30
+ export { Checkbox }
@@ -0,0 +1,98 @@
1
+ @import "tailwindcss";
2
+
3
+ @custom-variant dark (&:is(.dark *));
4
+
5
+ @theme inline {
6
+ --color-background: var(--background);
7
+ --color-foreground: var(--foreground);
8
+ --color-card: var(--card);
9
+ --color-card-foreground: var(--card-foreground);
10
+ --color-popover: var(--popover);
11
+ --color-popover-foreground: var(--popover-foreground);
12
+ --color-primary: var(--primary);
13
+ --color-primary-foreground: var(--primary-foreground);
14
+ --color-secondary: var(--secondary);
15
+ --color-secondary-foreground: var(--secondary-foreground);
16
+ --color-muted: var(--muted);
17
+ --color-muted-foreground: var(--muted-foreground);
18
+ --color-accent: var(--accent);
19
+ --color-accent-foreground: var(--accent-foreground);
20
+ --color-destructive: var(--destructive);
21
+ --color-destructive-foreground: var(--destructive-foreground);
22
+ --color-border: var(--border);
23
+ --color-input: var(--input);
24
+ --color-ring: var(--ring);
25
+ --color-chart-1: var(--chart-1);
26
+ --color-chart-2: var(--chart-2);
27
+ --color-chart-3: var(--chart-3);
28
+ --color-chart-4: var(--chart-4);
29
+ --color-chart-5: var(--chart-5);
30
+ --radius-sm: calc(var(--radius) - 4px);
31
+ --radius-md: calc(var(--radius) - 2px);
32
+ --radius-lg: var(--radius);
33
+ --radius-xl: calc(var(--radius) + 4px);
34
+ }
35
+
36
+ :root {
37
+ --background: oklch(1 0 0);
38
+ --foreground: oklch(0.145 0 0);
39
+ --card: oklch(1 0 0);
40
+ --card-foreground: oklch(0.145 0 0);
41
+ --popover: oklch(1 0 0);
42
+ --popover-foreground: oklch(0.145 0 0);
43
+ --primary: oklch(0.205 0 0);
44
+ --primary-foreground: oklch(0.985 0 0);
45
+ --secondary: oklch(0.97 0 0);
46
+ --secondary-foreground: oklch(0.205 0 0);
47
+ --muted: oklch(0.97 0 0);
48
+ --muted-foreground: oklch(0.556 0 0);
49
+ --accent: oklch(0.97 0 0);
50
+ --accent-foreground: oklch(0.205 0 0);
51
+ --destructive: oklch(0.577 0.245 27.325);
52
+ --destructive-foreground: oklch(0.577 0.245 27.325);
53
+ --border: oklch(0.922 0 0);
54
+ --input: oklch(0.922 0 0);
55
+ --ring: oklch(0.708 0 0);
56
+ --chart-1: oklch(0.646 0.222 41.116);
57
+ --chart-2: oklch(0.6 0.118 184.704);
58
+ --chart-3: oklch(0.398 0.07 227.392);
59
+ --chart-4: oklch(0.828 0.189 84.429);
60
+ --chart-5: oklch(0.769 0.188 70.08);
61
+ --radius: 0.625rem;
62
+ }
63
+
64
+ .dark {
65
+ --background: oklch(0.145 0 0);
66
+ --foreground: oklch(0.985 0 0);
67
+ --card: oklch(0.145 0 0);
68
+ --card-foreground: oklch(0.985 0 0);
69
+ --popover: oklch(0.145 0 0);
70
+ --popover-foreground: oklch(0.985 0 0);
71
+ --primary: oklch(0.985 0 0);
72
+ --primary-foreground: oklch(0.205 0 0);
73
+ --secondary: oklch(0.269 0 0);
74
+ --secondary-foreground: oklch(0.985 0 0);
75
+ --muted: oklch(0.269 0 0);
76
+ --muted-foreground: oklch(0.708 0 0);
77
+ --accent: oklch(0.269 0 0);
78
+ --accent-foreground: oklch(0.985 0 0);
79
+ --destructive: oklch(0.396 0.141 25.723);
80
+ --destructive-foreground: oklch(0.637 0.237 25.331);
81
+ --border: oklch(0.269 0 0);
82
+ --input: oklch(0.269 0 0);
83
+ --ring: oklch(0.439 0 0);
84
+ --chart-1: oklch(0.488 0.243 264.376);
85
+ --chart-2: oklch(0.696 0.17 162.48);
86
+ --chart-3: oklch(0.769 0.188 70.08);
87
+ --chart-4: oklch(0.627 0.265 303.9);
88
+ --chart-5: oklch(0.645 0.246 16.439);
89
+ }
90
+
91
+ @layer base {
92
+ * {
93
+ @apply border-border;
94
+ }
95
+ body {
96
+ @apply bg-background text-foreground;
97
+ }
98
+ }
File without changes
@@ -0,0 +1,6 @@
1
+ import { type ClassValue, clsx } from "clsx"
2
+ import { twMerge } from "tailwind-merge"
3
+
4
+ export function cn(...inputs: ClassValue[]) {
5
+ return twMerge(clsx(inputs))
6
+ }
@@ -0,0 +1,36 @@
1
+ import { useEffect, useState, type ReactNode } from 'react'
2
+ import '@/globals.css'
3
+
4
+ export default function RootLayout({ children }: { children: ReactNode }) {
5
+ const [theme, setTheme] = useState<'light' | 'dark'>('light')
6
+
7
+ useEffect(() => {
8
+ if (window.openai?.theme) {
9
+ setTheme(window.openai.theme)
10
+ }
11
+ }, [])
12
+
13
+ return (
14
+ <div className={theme === 'dark' ? 'dark' : ''}>
15
+ {children}
16
+ </div>
17
+ )
18
+ }
19
+
20
+ // Type declarations for OpenAI host
21
+ declare global {
22
+ interface Window {
23
+ openai?: {
24
+ theme?: 'light' | 'dark'
25
+ content?: {
26
+ structuredContent?: unknown
27
+ }
28
+ sendFollowUpMessage?: (message: string) => void
29
+ callTool?: (name: string, args: Record<string, unknown>) => Promise<unknown>
30
+ openExternal?: (url: string) => void
31
+ requestDisplayMode?: (mode: 'inline' | 'fullscreen' | 'pip') => void
32
+ requestClose?: () => void
33
+ setWidgetState?: (state: Record<string, unknown>) => void
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "../../tsconfig.web.json"
3
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "include": ["src/**/*"],
3
+ "exclude": ["vite.config.ts", "src/web"],
4
+ "compilerOptions": {
5
+ "rootDir": "./src",
6
+ "outDir": "./dist",
7
+ "module": "nodenext",
8
+ "target": "esnext",
9
+ "types": [],
10
+ "sourceMap": true,
11
+ "declaration": true,
12
+ "declarationMap": true,
13
+ "noUncheckedIndexedAccess": true,
14
+ "exactOptionalPropertyTypes": true,
15
+ "strict": true,
16
+ "verbatimModuleSyntax": true,
17
+ "isolatedModules": true,
18
+ "moduleDetection": "force",
19
+ "skipLibCheck": true,
20
+ "baseUrl": ".",
21
+ "paths": {
22
+ "@/*": ["./src/web/*"]
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "useDefineForClassFields": true,
5
+ "lib": ["ES2020", "DOM", "DOM.Iterable"],
6
+ "module": "ESNext",
7
+ "skipLibCheck": true,
8
+ "moduleResolution": "bundler",
9
+ "allowImportingTsExtensions": true,
10
+ "resolveJsonModule": true,
11
+ "isolatedModules": true,
12
+ "noEmit": true,
13
+ "jsx": "react-jsx",
14
+ "strict": true,
15
+ "noUnusedLocals": true,
16
+ "noUnusedParameters": true,
17
+ "noFallthroughCasesInSwitch": true,
18
+ "baseUrl": ".",
19
+ "paths": {
20
+ "@/*": ["./src/web/*"]
21
+ }
22
+ },
23
+ "include": ["src/web"]
24
+ }
@@ -0,0 +1,37 @@
1
+ import { defineConfig } from 'vite'
2
+ import react from '@vitejs/plugin-react'
3
+ import tailwindcss from '@tailwindcss/vite'
4
+ import { chatGPTWidgetPlugin } from 'vite-plugin-chatgpt-widgets'
5
+ import { resolve } from 'path'
6
+
7
+ const port = Number(process.env.PORT) || 3000
8
+
9
+ export default defineConfig({
10
+ plugins: [
11
+ react(),
12
+ tailwindcss(),
13
+ chatGPTWidgetPlugin({
14
+ widgetsDir: 'src/web',
15
+ baseUrl: `http://localhost:${port}`
16
+ })
17
+ ],
18
+ resolve: {
19
+ alias: {
20
+ '@': resolve(import.meta.dirname, 'src/web')
21
+ }
22
+ },
23
+ build: {
24
+ manifest: true,
25
+ outDir: 'dist/web',
26
+ rollupOptions: {
27
+ // Don't look for default index.html - the plugin adds widget entries
28
+ input: {}
29
+ }
30
+ },
31
+ server: {
32
+ cors: {
33
+ origin: true
34
+ },
35
+ allowedHosts: ['.ngrok-free.dev', '.ngrok.io']
36
+ }
37
+ })
@@ -1,52 +0,0 @@
1
- <br>
2
- <p align="center">
3
- <a href="https://manifest.build/#gh-light-mode-only">
4
- <img alt="manifest" src="https://manifest.build/assets/images/logo-transparent.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
5
- </a>
6
- <a href="https://manifest.build/#gh-dark-mode-only">
7
- <img alt="manifest" src="https://manifest.build/assets/images/logo-light.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
8
- </a>
9
- </p>
10
-
11
- <p align='center'>
12
- <strong>1-file backend to ship fast</strong> <br> <span>Manifest is an open source, portable backend with data, storage, logic, auth and admin UI to ship Prototypes and MVPs.
13
- </span>
14
-
15
- ## Description
16
-
17
- Welcome to your [Manifest](https://github.com/mnfst/manifest) project ! Feel free to replace this README by your own.
18
-
19
- This application is a **monorepo** composed by a [Manifest backend](https://github.com/mnfst/manifest) in the "/api" folder and a frontend of your choice that you can add in the "/web" folder.
20
-
21
- ## Installation
22
-
23
- ```bash
24
- $ npm install
25
- ```
26
-
27
- ## Running the app
28
-
29
- To run the app in the development mode:
30
-
31
- ```bash
32
- npm run start
33
- ```
34
-
35
- - Open [http://localhost:1111](http://localhost:1111) to open your admin UI it in your browser
36
- - Open [http://localhost:1111/api](http://localhost:111/api) to view your REST API documentation
37
-
38
- The page will reload when you make changes.
39
-
40
- ## Seed dummy data
41
-
42
- Seeds some dummy data for your entities:
43
-
44
- ```bash
45
- npm run seed
46
- ```
47
-
48
- ## Community & Resources
49
-
50
- - [Docs](https://manifest.build/docs) - Get started with Manifest
51
- - [Discord](https://discord.gg/FepAked3W7) - Come chat with the community
52
- - [Github](https://github.com/mnfst/manifest/issues) - Report bugs and share ideas to improve the product.
@@ -1,9 +0,0 @@
1
- {
2
- "name": "@PROJECT_NAME/api",
3
- "version": "0.1.0",
4
- "description": "A backend made with Manifest: https://manifest.build",
5
- "private": true,
6
- "license": "UNLICENSED",
7
- "scripts": {},
8
- "dependencies": {}
9
- }
@@ -1,50 +0,0 @@
1
- <br>
2
- <p align="center">
3
- <a href="https://manifest.build/#gh-light-mode-only">
4
- <img alt="manifest" src="https://manifest.build/assets/images/logo-transparent.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
5
- </a>
6
- <a href="https://manifest.build/#gh-dark-mode-only">
7
- <img alt="manifest" src="https://manifest.build/assets/images/logo-light.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
8
- </a>
9
- </p>
10
-
11
- <p align='center'>
12
- <strong>1-file backend to ship fast</strong> <br> <span>Manifest is an open source, portable backend with data, storage, logic, auth and admin UI to ship Prototypes and MVPs.
13
- </span>
14
-
15
- ## Description
16
-
17
- Welcome to your [Manifest](https://github.com/mnfst/manifest) backend ! Feel free to replace this README by your own.
18
-
19
- ## Installation
20
-
21
- ```bash
22
- $ npm install
23
- ```
24
-
25
- ## Running the app
26
-
27
- To run the app in the development mode:
28
-
29
- ```bash
30
- npm run start
31
- ```
32
-
33
- - Open [http://localhost:1111](http://localhost:1111) to open your admin UI it in your browser
34
- - Open [http://localhost:1111/api](http://localhost:111/api) to view your REST API documentation
35
-
36
- The page will reload when you make changes.
37
-
38
- ## Seed dummy data
39
-
40
- Seeds some dummy data for your entities:
41
-
42
- ```bash
43
- npm run seed
44
- ```
45
-
46
- ## Community & Resources
47
-
48
- - [Docs](https://manifest.build/docs) - Get started with Manifest
49
- - [Discord](https://discord.gg/FepAked3W7) - Come chat with the community
50
- - [Github](https://github.com/mnfst/manifest/issues) - Report bugs and share ideas to improve the product.
@@ -1,34 +0,0 @@
1
- # This is a sample file for a manifest.yml manifest backend.
2
- # Read more about the manifest format here: https:/manifest.build/docs
3
-
4
- name: My pet app 🐾
5
- entities:
6
- Owner:
7
- properties:
8
- - name
9
- - { name: birthdate, type: date }
10
- policies:
11
- read:
12
- - access: public
13
-
14
- Cat:
15
- properties:
16
- - name
17
- - { name: age, type: number }
18
- - { name: birthdate, type: date }
19
- belongsTo:
20
- - Owner
21
- policies:
22
- read:
23
- - access: public
24
-
25
- Homepage:
26
- nameSingular: Home content
27
- single: true
28
- properties:
29
- - title
30
- - { name: description, type: richText }
31
- - { name: cover, type: image }
32
- policies:
33
- read:
34
- - access: public
@@ -1,15 +0,0 @@
1
- {
2
- "name": "PROJECT_NAME",
3
- "private": true,
4
- "workspaces": ["api", "web"],
5
- "description": "A full-stack app made with Manifest: https://manifest.build",
6
- "scripts": {
7
- "start": "concurrently \"npm run start:api\" \"npm run start:web\"",
8
- "start:api": "npm run start --workspace=api",
9
- "start:web": "npm run start --workspace=web",
10
- "seed": "npm run seed --workspace=api"
11
- },
12
- "devDependencies": {
13
- "concurrently": "^8.0.0"
14
- }
15
- }
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@PROJECT_NAME/web",
3
- "version": "0.1.0",
4
- "private": true,
5
- "license": "UNLICENSED",
6
- "scripts": {
7
- "start": "echo 'Add your frontend framework here'",
8
- "build": "echo 'Add your build command here'"
9
- }
10
- }
@@ -1,9 +0,0 @@
1
- # Frontend Application
2
-
3
- This folder is ready for your frontend framework of choice:
4
-
5
- - Next.js: `npx create-next-app@latest . --typescript --tailwind`
6
- - Vite React: `npm create vite@latest . -- --template react-ts`
7
- - SvelteKit: `npm create svelte@latest .`
8
-
9
- After setting up your frontend, update the dev script in package.json.
@@ -1,50 +0,0 @@
1
- <br>
2
- <p align="center">
3
- <a href="https://manifest.build/#gh-light-mode-only">
4
- <img alt="manifest" src="https://manifest.build/assets/images/logo-transparent.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
5
- </a>
6
- <a href="https://manifest.build/#gh-dark-mode-only">
7
- <img alt="manifest" src="https://manifest.build/assets/images/logo-light.svg" height="55px" alt="Manifest logo" title="Manifest - A backend so simple that it fits in a YAML file" />
8
- </a>
9
- </p>
10
-
11
- <p align='center'>
12
- <strong>1-file backend to ship fast</strong> <br> <span>Manifest is an open source, portable backend with data, storage, logic, auth and admin UI to ship Prototypes and MVPs.
13
- </span>
14
-
15
- ## Description
16
-
17
- Welcome to your [Manifest](https://github.com/mnfst/manifest) project ! Feel free to replace this README by your own.
18
-
19
- ## Installation
20
-
21
- ```bash
22
- $ npm install
23
- ```
24
-
25
- ## Running the app
26
-
27
- To run the app in the development mode:
28
-
29
- ```bash
30
- npm run start
31
- ```
32
-
33
- - Open [http://localhost:1111](http://localhost:1111) to open your admin UI it in your browser
34
- - Open [http://localhost:1111/api](http://localhost:111/api) to view your REST API documentation
35
-
36
- The page will reload when you make changes.
37
-
38
- ## Seed dummy data
39
-
40
- Seeds some dummy data for your entities:
41
-
42
- ```bash
43
- npm run seed
44
- ```
45
-
46
- ## Community & Resources
47
-
48
- - [Docs](https://manifest.build/docs) - Get started with Manifest
49
- - [Discord](https://discord.gg/FepAked3W7) - Come chat with the community
50
- - [Github](https://github.com/mnfst/manifest/issues) - Report bugs and share ideas to improve the product.
@@ -1,9 +0,0 @@
1
- {
2
- "name": "PROJECT_NAME",
3
- "version": "0.1.0",
4
- "description": "A backend made with Manifest: https://manifest.build",
5
- "private": true,
6
- "license": "UNLICENSED",
7
- "scripts": {},
8
- "dependencies": {}
9
- }
@@ -1,34 +0,0 @@
1
- # This is a sample file for a manifest.yml manifest backend.
2
- # Read more about the manifest format here: https:/manifest.build/docs
3
-
4
- name: My pet app 🐾
5
- entities:
6
- Owner:
7
- properties:
8
- - name
9
- - { name: birthdate, type: date }
10
- policies:
11
- read:
12
- - access: public
13
-
14
- Cat:
15
- properties:
16
- - name
17
- - { name: age, type: number }
18
- - { name: birthdate, type: date }
19
- belongsTo:
20
- - Owner
21
- policies:
22
- read:
23
- - access: public
24
-
25
- Homepage:
26
- nameSingular: Home content
27
- single: true
28
- properties:
29
- - title
30
- - { name: description, type: richText }
31
- - { name: cover, type: image }
32
- policies:
33
- read:
34
- - access: public
package/bin/dev.cmd DELETED
@@ -1,3 +0,0 @@
1
- @echo off
2
-
3
- node --loader ts-node/esm --no-warnings=ExperimentalWarning "%~dp0\dev" %*
package/bin/dev.js DELETED
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env -S node --loader ts-node/esm --no-warnings=ExperimentalWarning
2
-
3
- import {execute} from '@oclif/core'
4
-
5
- await execute({development: true, dir: import.meta.url})
package/bin/run.cmd DELETED
@@ -1,3 +0,0 @@
1
- @echo off
2
-
3
- node "%~dp0\run" %*
package/bin/run.js DELETED
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import {execute} from '@oclif/core'
4
-
5
- await execute({dir: import.meta.url})