├── .nvmrc ├── apps ├── deploy │ ├── public │ │ ├── .gitkeep │ │ └── favicon.ico │ ├── .gitignore │ └── tsconfig.json ├── dispatcher │ ├── public │ │ ├── .gitkeep │ │ └── favicon.ico │ ├── biome.json │ ├── tsconfig.json │ ├── .gitignore │ ├── .dev.vars.example │ ├── package.json │ ├── src │ │ └── db │ │ │ └── custom-domain.ts │ └── CHANGELOG.md ├── deploy-workflow │ ├── public │ │ ├── .gitkeep │ │ └── favicon.ico │ ├── README.md │ ├── tsconfig.json │ ├── .gitignore │ ├── package.json │ ├── CHANGELOG.md │ └── src │ │ └── db.ts ├── docs │ ├── READEM.md │ ├── content │ │ ├── meta.json │ │ ├── meta.zh.json │ │ ├── opensource │ │ │ ├── index.mdx │ │ │ ├── bestpractice │ │ │ │ ├── index.mdx │ │ │ │ └── index.zh.mdx │ │ │ ├── meta.zh.json │ │ │ ├── index.zh.mdx │ │ │ └── meta.json │ │ └── platform │ │ │ ├── guides │ │ │ ├── meta.zh.json │ │ │ └── meta.json │ │ │ ├── meta.zh.json │ │ │ ├── meta.json │ │ │ ├── account │ │ │ └── index.zh.mdx │ │ │ ├── usinglibra │ │ │ ├── deploy │ │ │ │ └── index.zh.mdx │ │ │ └── timeMachine │ │ │ │ └── index.zh.mdx │ │ │ └── community │ │ │ └── index.zh.mdx │ ├── public │ │ ├── fork.png │ │ ├── favicon.ico │ │ ├── rollback.png │ │ ├── codeDirectEdit.png │ │ └── previewDirectEdit.png │ ├── biome.json │ ├── next-env.d.ts │ ├── .source │ │ └── source.config.mjs │ ├── tsconfig.json │ ├── package.json │ ├── CHANGELOG.md │ ├── .gitignore │ ├── postcss.config.mjs │ ├── app │ │ └── page.tsx │ ├── source.config.ts │ ├── middleware.ts │ └── lib │ │ ├── i18n.ts │ │ └── translations.ts ├── web │ ├── components │ │ ├── admin │ │ │ ├── README.md │ │ │ └── index.ts │ │ ├── ide │ │ │ └── libra │ │ │ │ ├── github-integration │ │ │ │ ├── __tests__ │ │ │ │ │ ├── github-modal.test.tsx │ │ │ │ │ ├── install-step.test.tsx │ │ │ │ │ └── status-card.test.tsx │ │ │ │ └── index.ts │ │ │ │ ├── navbar │ │ │ │ └── components │ │ │ │ │ └── deployment │ │ │ │ │ └── molecules │ │ │ │ │ └── index.ts │ │ │ │ ├── utils │ │ │ │ └── messageValidation.ts │ │ │ │ └── chat-panel │ │ │ │ └── components │ │ │ │ └── hooks │ │ │ │ └── index.ts │ │ ├── common │ │ │ ├── user-button │ │ │ │ └── index.ts │ │ │ ├── user-button.tsx │ │ │ └── upgrade-modal │ │ │ │ └── index.ts │ │ ├── dashboard │ │ │ ├── create-project-dialog.tsx │ │ │ ├── project-details-dialogs │ │ │ │ └── index.tsx │ │ │ └── ui │ │ │ │ └── skeleton-card.tsx │ │ └── billing │ │ │ └── index.ts │ ├── project.inlang │ │ ├── .gitignore │ │ ├── project_id │ │ └── settings.json │ ├── public │ │ ├── sitemap.txt │ │ ├── _headers │ │ ├── app-dark.png │ │ ├── favicon.ico │ │ ├── app-light.png │ │ ├── twitter-image.png │ │ ├── logo-background.gif │ │ ├── opengraph-image.png │ │ ├── anthropic.svg │ │ └── images │ │ │ └── file-icons │ │ │ └── vue.svg │ ├── app │ │ ├── (frontend) │ │ │ ├── READEME.md │ │ │ ├── not-found.tsx │ │ │ ├── (marketing) │ │ │ │ ├── terms │ │ │ │ │ └── page.tsx │ │ │ │ ├── (auth) │ │ │ │ │ └── login │ │ │ │ │ │ └── page.tsx │ │ │ │ └── privacy │ │ │ │ │ └── page.tsx │ │ │ ├── layout.config.tsx │ │ │ ├── (dashboard) │ │ │ │ └── dashboard │ │ │ │ │ ├── page.tsx │ │ │ │ │ └── teams │ │ │ │ │ └── page.tsx │ │ │ ├── fonts.ts │ │ │ └── robot.ts │ │ └── api │ │ │ └── auth │ │ │ └── [...all] │ │ │ └── route.ts │ ├── image.png │ ├── .vscode │ │ └── extensions.json │ ├── .gitignore │ ├── biome.json │ ├── next-env.d.ts │ ├── tsconfig.json │ ├── postcss.config.mjs │ ├── configs │ │ ├── flags.ts │ │ └── urls.ts │ └── lib │ │ └── hooks │ │ └── use-is-mounted.tsx ├── email │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ └── package.json ├── cdn │ ├── biome.json │ ├── public │ │ ├── logo.png │ │ ├── favicon.ico │ │ └── notification.wav │ ├── .dev.vars.example │ ├── tsconfig.json │ ├── .gitignore │ ├── package.json │ └── CHANGELOG.md ├── builder │ ├── src │ │ ├── vite-env.d.ts │ │ ├── components │ │ │ └── ui │ │ │ │ ├── use-toast.ts │ │ │ │ ├── aspect-ratio.tsx │ │ │ │ ├── skeleton.tsx │ │ │ │ ├── collapsible.tsx │ │ │ │ ├── label.tsx │ │ │ │ ├── textarea.tsx │ │ │ │ ├── separator.tsx │ │ │ │ ├── progress.tsx │ │ │ │ ├── toaster.tsx │ │ │ │ ├── input.tsx │ │ │ │ ├── sonner.tsx │ │ │ │ ├── checkbox.tsx │ │ │ │ ├── slider.tsx │ │ │ │ ├── switch.tsx │ │ │ │ ├── tooltip.tsx │ │ │ │ └── badge.tsx │ │ ├── lib │ │ │ └── utils.ts │ │ ├── main.tsx │ │ ├── pages │ │ │ └── Index.tsx │ │ ├── App.css │ │ └── App.tsx │ ├── .dockerignore │ ├── index.html │ ├── tsconfig.json │ ├── .gitignore │ ├── components.json │ ├── wrangler.jsonc │ ├── BUILDER.md │ ├── e2b.toml.example │ ├── vite.config.ts │ ├── tsconfig.node.json │ ├── e2b.Dockerfile │ ├── Dockerfile │ ├── tsconfig.app.json │ └── CHANGELOG.md ├── vite-shadcn-template │ ├── src │ │ ├── vite-env.d.ts │ │ ├── components │ │ │ └── ui │ │ │ │ ├── use-toast.ts │ │ │ │ ├── aspect-ratio.tsx │ │ │ │ ├── skeleton.tsx │ │ │ │ ├── collapsible.tsx │ │ │ │ ├── label.tsx │ │ │ │ ├── textarea.tsx │ │ │ │ ├── separator.tsx │ │ │ │ ├── progress.tsx │ │ │ │ ├── toaster.tsx │ │ │ │ ├── input.tsx │ │ │ │ ├── sonner.tsx │ │ │ │ ├── checkbox.tsx │ │ │ │ ├── slider.tsx │ │ │ │ ├── switch.tsx │ │ │ │ ├── tooltip.tsx │ │ │ │ └── badge.tsx │ │ ├── lib │ │ │ └── utils.ts │ │ ├── main.tsx │ │ ├── pages │ │ │ └── Index.tsx │ │ ├── App.css │ │ ├── App.tsx │ │ └── worker.ts │ ├── CHANGELOG.md │ ├── .dev.vars.example │ ├── tsconfig.json │ ├── components.json │ ├── .gitignore │ ├── wrangler.jsonc │ ├── prepare-daytona.sh │ ├── e2b.toml.example │ ├── daytona.Dockerfile │ ├── tsconfig.node.json │ ├── e2b.Dockerfile │ ├── index.html │ ├── Dockerfile │ └── tsconfig.app.json ├── screenshot │ ├── public │ │ └── favicon.ico │ ├── .gitignore │ ├── vitest.config.ts │ └── tsconfig.json ├── auth-studio │ ├── CHANGELOG.md │ ├── package.json │ ├── DEV_ZH.md │ └── DEV.md └── opennext-cache │ ├── CHANGELOG.md │ ├── src │ └── index.ts │ ├── tsconfig.json │ ├── package.json │ └── wrangler.jsonc ├── packages ├── middleware │ ├── README_ZH.md │ ├── .gitignore │ ├── CHANGELOG.md │ └── tsconfig.json ├── api │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── .dev.vars.example │ ├── package.json │ └── src │ │ └── router │ │ ├── project.ts │ │ └── hello.ts ├── auth │ ├── .gitignore │ ├── wrangler.jsonc │ ├── db │ │ └── migrations │ │ │ └── meta │ │ │ └── _journal.json │ ├── tsconfig.json │ ├── utils │ │ ├── subscription-limits │ │ │ └── index.ts │ │ ├── __tests__ │ │ │ └── admin-utils.test.ts │ │ └── stripe-config.ts │ ├── webhooks │ │ └── shared │ │ │ └── constants.ts │ ├── plugins │ │ ├── captcha-plugin.ts │ │ └── stripe │ │ │ └── subscription-handlers.ts │ └── package.json ├── common │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── package.json │ └── tsup.config.ts ├── db │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── drizzle │ │ ├── 0001_sticky_blade.sql │ │ └── meta │ │ │ └── _journal.json │ ├── package.json │ ├── cloudflare-env.d.ts │ ├── env.mjs │ ├── tsup.config.ts │ └── drizzle.config.ts ├── sandbox │ ├── .gitignore │ ├── tsconfig.json │ ├── tsup.config.ts │ ├── CHANGELOG.md │ └── package.json ├── ui │ ├── .gitignore │ ├── biome.json │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── components.json │ ├── src │ │ ├── components │ │ │ ├── accordion.tsx │ │ │ └── skeleton.tsx │ │ └── lib │ │ │ └── utils.ts │ └── postcss.config.mjs ├── templates │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README_ZH.md │ ├── tsconfig.json │ ├── README.md │ ├── DEV_ZH.md │ ├── package.json │ ├── DEV.md │ ├── index.ts │ ├── tsup.config.ts │ └── types.ts ├── shikicode │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── src │ │ ├── index.ts │ │ ├── scroll.ts │ │ └── plugins │ │ │ └── index.ts │ ├── package.json │ └── tsup.config.ts ├── better-auth-stripe │ ├── .gitignore │ ├── CHANGELOG.md │ ├── tsconfig.json │ └── package.json ├── email │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ ├── package.json │ ├── index.ts │ ├── components │ │ └── index.ts │ ├── env.mjs │ └── tsup.config.ts └── better-auth-cloudflare │ ├── .gitignore │ ├── tsconfig.json │ ├── CHANGELOG.md │ └── package.json ├── vercel.json ├── logo-large.png ├── tooling └── typescript-config │ ├── CHANGELOG.md │ ├── package.json │ └── base.json ├── .vscode └── settings.json ├── scripts ├── CHANGELOG.md ├── tsconfig.json └── package.json ├── .changeset ├── config.json └── README.md └── .gitignore /.nvmrc: -------------------------------------------------------------------------------- 1 | v24.4.0 -------------------------------------------------------------------------------- /apps/deploy/public/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/dispatcher/public/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/middleware/README_ZH.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/deploy-workflow/public/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/docs/READEM.md: -------------------------------------------------------------------------------- 1 | ## libra docs 2 | -------------------------------------------------------------------------------- /apps/web/components/admin/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/deploy-workflow/README.md: -------------------------------------------------------------------------------- 1 | deprectated -------------------------------------------------------------------------------- /apps/web/project.inlang/.gitignore: -------------------------------------------------------------------------------- 1 | cache -------------------------------------------------------------------------------- /apps/email/.gitignore: -------------------------------------------------------------------------------- 1 | .react-email 2 | .turbo -------------------------------------------------------------------------------- /apps/cdn/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "//" 3 | } 4 | -------------------------------------------------------------------------------- /apps/web/project.inlang/project_id: -------------------------------------------------------------------------------- 1 | KZS8YvEsl6JufANzgX -------------------------------------------------------------------------------- /apps/web/public/sitemap.txt: -------------------------------------------------------------------------------- 1 | https://libra.dev/ 2 | -------------------------------------------------------------------------------- /apps/web/app/(frontend)/READEME.md: -------------------------------------------------------------------------------- 1 | 2 | ## full logic 3 | -------------------------------------------------------------------------------- /packages/api/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/auth/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/common/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/db/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/middleware/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist -------------------------------------------------------------------------------- /packages/sandbox/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist -------------------------------------------------------------------------------- /packages/ui/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/ui/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "//" 3 | } 4 | -------------------------------------------------------------------------------- /apps/dispatcher/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "//" 3 | } 4 | -------------------------------------------------------------------------------- /packages/templates/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/shikicode/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | lib 3 | .turbo 4 | -------------------------------------------------------------------------------- /apps/builder/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /packages/better-auth-stripe/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /packages/email/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | .node_modules -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "github": { 3 | "silent": true 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/better-auth-cloudflare/.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .turbo 3 | .dist 4 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /logo-large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/logo-large.png -------------------------------------------------------------------------------- /apps/web/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/image.png -------------------------------------------------------------------------------- /apps/web/public/_headers: -------------------------------------------------------------------------------- 1 | /_next/static/* 2 | Cache-Control: public,max-age=31536000,immutable -------------------------------------------------------------------------------- /apps/docs/content/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "pages": [ 3 | "platform", 4 | "opensource" 5 | ] 6 | } -------------------------------------------------------------------------------- /apps/cdn/public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/cdn/public/logo.png -------------------------------------------------------------------------------- /apps/docs/content/meta.zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "pages": [ 3 | "platform", 4 | "opensource" 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /apps/docs/public/fork.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/docs/public/fork.png -------------------------------------------------------------------------------- /apps/cdn/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/cdn/public/favicon.ico -------------------------------------------------------------------------------- /apps/docs/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/docs/public/favicon.ico -------------------------------------------------------------------------------- /apps/web/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "inlang.vs-code-extension" 4 | ] 5 | } -------------------------------------------------------------------------------- /apps/web/public/app-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/app-dark.png -------------------------------------------------------------------------------- /apps/web/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/favicon.ico -------------------------------------------------------------------------------- /apps/deploy/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/deploy/public/favicon.ico -------------------------------------------------------------------------------- /apps/docs/public/rollback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/docs/public/rollback.png -------------------------------------------------------------------------------- /apps/web/public/app-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/app-light.png -------------------------------------------------------------------------------- /apps/cdn/public/notification.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/cdn/public/notification.wav -------------------------------------------------------------------------------- /apps/web/public/twitter-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/twitter-image.png -------------------------------------------------------------------------------- /apps/dispatcher/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/dispatcher/public/favicon.ico -------------------------------------------------------------------------------- /apps/docs/public/codeDirectEdit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/docs/public/codeDirectEdit.png -------------------------------------------------------------------------------- /apps/screenshot/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/screenshot/public/favicon.ico -------------------------------------------------------------------------------- /apps/web/public/logo-background.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/logo-background.gif -------------------------------------------------------------------------------- /apps/web/public/opengraph-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/web/public/opengraph-image.png -------------------------------------------------------------------------------- /apps/docs/public/previewDirectEdit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/docs/public/previewDirectEdit.png -------------------------------------------------------------------------------- /apps/auth-studio/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/auth-studio 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/use-toast.ts: -------------------------------------------------------------------------------- 1 | import { useToast, toast } from "@/hooks/use-toast"; 2 | 3 | export { useToast, toast }; 4 | -------------------------------------------------------------------------------- /apps/deploy-workflow/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nextify-limited/libra/HEAD/apps/deploy-workflow/public/favicon.ico -------------------------------------------------------------------------------- /packages/templates/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/templates 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | -------------------------------------------------------------------------------- /apps/web/.gitignore: -------------------------------------------------------------------------------- 1 | # Sentry Config File 2 | .env.sentry-build-plugin 3 | .dev.vars 4 | .open-next 5 | .wrangler 6 | .cache 7 | paraglide 8 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/components/ui/use-toast.ts: -------------------------------------------------------------------------------- 1 | import { useToast, toast } from "@/hooks/use-toast"; 2 | 3 | export { useToast, toast }; 4 | -------------------------------------------------------------------------------- /tooling/typescript-config/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/typescript-config 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | -------------------------------------------------------------------------------- /packages/api/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "include": ["src", "*.ts"], 4 | "exclude": ["node_modules"] 5 | } -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "cSpell.words": [ 3 | "DAYTONA", 4 | "Nextify", 5 | "Nums", 6 | "opennextjs", 7 | "shadcn" 8 | ] 9 | } -------------------------------------------------------------------------------- /apps/docs/content/opensource/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Introducing Libra Project 3 | --- 4 | 5 | # Introducing Libra Project 6 | 7 | Welcome to the Libra AI open source documentation. -------------------------------------------------------------------------------- /apps/docs/content/opensource/bestpractice/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Introducing Libra Best Practice 3 | --- 4 | 5 | # Best Practices 6 | 7 | Learn about best practices for using Libra AI. -------------------------------------------------------------------------------- /tooling/typescript-config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/typescript-config", 3 | "version": "1.0.0", 4 | "private": true, 5 | "files": [ 6 | "base.json" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/aspect-ratio.tsx: -------------------------------------------------------------------------------- 1 | import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio" 2 | 3 | const AspectRatio = AspectRatioPrimitive.Root 4 | 5 | export { AspectRatio } 6 | -------------------------------------------------------------------------------- /apps/docs/content/platform/guides/meta.zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "使用指南", 3 | "description": "有效使用 Libra AI 的综合指南", 4 | "icon": "BookOpen", 5 | "pages": [ 6 | "effective-ai-communication" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /apps/builder/.dockerignore: -------------------------------------------------------------------------------- 1 | e2b.Dockerfile 2 | e2b.toml 3 | e2b.toml.example 4 | .gitignore 5 | .idea 6 | _filestructure.ts 7 | fileStructure.ts 8 | generate-structure.ts 9 | BUILDER-zh.md 10 | BUILDER.md 11 | -------------------------------------------------------------------------------- /apps/builder/src/lib/utils.ts: -------------------------------------------------------------------------------- 1 | import { clsx, type ClassValue } from "clsx" 2 | import { twMerge } from "tailwind-merge" 3 | 4 | export function cn(...inputs: ClassValue[]) { 5 | return twMerge(clsx(inputs)) 6 | } 7 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/components/ui/aspect-ratio.tsx: -------------------------------------------------------------------------------- 1 | import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio" 2 | 3 | const AspectRatio = AspectRatioPrimitive.Root 4 | 5 | export { AspectRatio } 6 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/lib/utils.ts: -------------------------------------------------------------------------------- 1 | import { clsx, type ClassValue } from "clsx" 2 | import { twMerge } from "tailwind-merge" 3 | 4 | export function cn(...inputs: ClassValue[]) { 5 | return twMerge(clsx(inputs)) 6 | } 7 | -------------------------------------------------------------------------------- /apps/cdn/.dev.vars.example: -------------------------------------------------------------------------------- 1 | BETTER_GITHUB_CLIENT_ID= 2 | BETTER_GITHUB_CLIENT_SECRET= 3 | CLOUDFLARE_ACCOUNT_ID= 4 | DATABASE_ID= 5 | CLOUDFLARE_API_TOKEN= 6 | TURNSTILE_SECRET_KEY= 7 | RESEND_FROM= 8 | RESEND_API_KEY= 9 | POSTGRES_URL= -------------------------------------------------------------------------------- /apps/docs/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "//", 3 | "linter": { 4 | "rules": { 5 | "a11y": { 6 | "useKeyWithClickEvents": "warn", 7 | "useValidAnchor": "error" 8 | } 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /apps/opennext-cache/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # opennext-cache 2 | 3 | ## 1.0.1 4 | 5 | ### Patch Changes 6 | 7 | - docs bug fix & deps update 8 | 9 | ## 1.0.0 10 | 11 | ### Major Changes 12 | 13 | - first release major version 14 | -------------------------------------------------------------------------------- /scripts/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # libra-scripts 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @libra/typescript-config@1.0.0 13 | -------------------------------------------------------------------------------- /packages/middleware/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/middleware 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @libra/common@1.0.0 13 | -------------------------------------------------------------------------------- /packages/templates/README_ZH.md: -------------------------------------------------------------------------------- 1 | # vite-shadcn-template 2 | 3 | 此内容由 [vite-shadcn-template](../../apps/vite-shadcn-template) 项目使用 [generate-structure.ts](../../apps/vite-shadcn-template/generate-structure.ts) 生成。 4 | 5 | 用于 AI 上下文和 AI 编辑器集成。 -------------------------------------------------------------------------------- /apps/docs/content/platform/guides/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Guides", 3 | "description": "Comprehensive guides for using Libra AI effectively", 4 | "icon": "BookOpen", 5 | "pages": [ 6 | "effective-ai-communication" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # vite-shadcn-template-libra 2 | 3 | ## 1.0.1 4 | 5 | ### Patch Changes 6 | 7 | - docs bug fix & deps update 8 | 9 | ## 1.0.0 10 | 11 | ### Major Changes 12 | 13 | - first release major version 14 | -------------------------------------------------------------------------------- /packages/templates/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" 5 | }, 6 | "include": ["."], 7 | "exclude": ["node_modules"] 8 | } 9 | -------------------------------------------------------------------------------- /apps/email/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" 5 | }, 6 | "include": ["**/*.ts", "**/*.tsx"], 7 | "exclude": ["node_modules"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/auth/wrangler.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "d1_databases": [ 3 | { 4 | "binding": "DATABASE", 5 | "database_name": "libra", 6 | "database_id": "67910497-d3de-4085-ba2f-70c7d4ba5983", 7 | "migrations_dir": "./db/migrations" 8 | } 9 | ] 10 | } -------------------------------------------------------------------------------- /packages/db/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" 5 | }, 6 | "include": [".", "cloudflare-env.d.ts"], 7 | "exclude": ["node_modules"] 8 | } 9 | -------------------------------------------------------------------------------- /apps/deploy-workflow/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "include": [ 4 | "src/**/*", 5 | "worker-configuration.d.ts" 6 | ], 7 | "exclude": [ 8 | "public/inspect.js", 9 | "public/inspect.src.js" 10 | ] 11 | } -------------------------------------------------------------------------------- /packages/api/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/api 2 | 3 | ## 1.0.0 4 | 5 | ### Major Changes 6 | 7 | - first release major version 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @libra/auth@1.0.0 13 | - @libra/common@1.0.0 14 | - @libra/sandbox@1.0.0 15 | -------------------------------------------------------------------------------- /apps/web/biome.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "//", 3 | "linter": { 4 | "rules": { 5 | "a11y": { 6 | "useKeyWithClickEvents": "warn", 7 | "useValidAnchor": "error", 8 | "noStaticElementInteractions": "off" 9 | } 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/templates/README.md: -------------------------------------------------------------------------------- 1 | # vite-shadcn-template 2 | 3 | This content is generated by the [vite-shadcn-template](../../apps/vite-shadcn-template) project using [generate-structure.ts](../../apps/vite-shadcn-template/generate-structure.ts). 4 | 5 | Used for AI context and AI editor integration. -------------------------------------------------------------------------------- /packages/ui/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@libra/ui/*": ["./src/*"] 7 | } 8 | }, 9 | "include": ["*.ts", "src"], 10 | "exclude": ["node_modules"] 11 | } 12 | -------------------------------------------------------------------------------- /apps/docs/content/opensource/bestpractice/index.zh.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Libra 最佳实践介绍 3 | --- 4 | 5 | # Libra 最佳实践 6 | 7 | 本页面将介绍使用 Libra AI 的最佳实践和建议。 8 | 9 | ## 即将推出 10 | 11 | 我们正在准备详细的最佳实践指南,包括: 12 | 13 | - 如何有效地与 AI 交互 14 | - 项目结构建议 15 | - 代码质量最佳实践 16 | - 部署和维护指南 17 | 18 | 请关注我们的更新! 19 | -------------------------------------------------------------------------------- /packages/db/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/db 2 | 3 | ## 1.0.1 4 | 5 | ### Patch Changes 6 | 7 | - stripe bug fix 8 | 9 | ## 1.0.0 10 | 11 | ### Major Changes 12 | 13 | - first release major version 14 | 15 | ### Patch Changes 16 | 17 | - Updated dependencies 18 | - @libra/common@1.0.0 19 | -------------------------------------------------------------------------------- /apps/web/next-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | /// 4 | 5 | // NOTE: This file should not be edited 6 | // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. 7 | -------------------------------------------------------------------------------- /packages/api/.dev.vars.example: -------------------------------------------------------------------------------- 1 | # Cloudflare Configuration (Required for deployment functionality) 2 | CLOUDFLARE_ACCOUNT_ID=your_cloudflare_account_id 3 | CLOUDFLARE_API_TOKEN=your_cloudflare_api_token 4 | 5 | # Optional: Only needed if using AI Gateway 6 | CLOUDFLARE_AIGATEWAY_NAME=your_ai_gateway_name -------------------------------------------------------------------------------- /packages/common/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", 5 | "noPropertyAccessFromIndexSignature": false 6 | }, 7 | "include": ["src"], 8 | "exclude": ["node_modules"] 9 | } -------------------------------------------------------------------------------- /apps/docs/next-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | /// 4 | 5 | // NOTE: This file should not be edited 6 | // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. 7 | -------------------------------------------------------------------------------- /packages/auth/db/migrations/meta/_journal.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "7", 3 | "dialect": "sqlite", 4 | "entries": [ 5 | { 6 | "idx": 0, 7 | "version": "6", 8 | "when": 1751295232778, 9 | "tag": "0000_numerous_inertia", 10 | "breakpoints": true 11 | } 12 | ] 13 | } -------------------------------------------------------------------------------- /apps/builder/src/main.tsx: -------------------------------------------------------------------------------- 1 | import { StrictMode } from 'react' 2 | import { createRoot } from 'react-dom/client' 3 | import './index.css' 4 | import App from './App.tsx' 5 | 6 | createRoot(document.getElementById('root') as HTMLElement).render( 7 | 8 | 9 | , 10 | ) 11 | -------------------------------------------------------------------------------- /packages/shikicode/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", 5 | "exactOptionalPropertyTypes": false 6 | }, 7 | "include": ["src"], 8 | "exclude": ["node_modules", "lib"] 9 | } 10 | -------------------------------------------------------------------------------- /apps/auth-studio/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/auth-studio", 3 | "version": "1.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "cd ../../packages/auth && bun with-env drizzle-kit studio --port 3002", 7 | "with-env": "dotenv -e ../../.env --", 8 | "update": "bun update" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/main.tsx: -------------------------------------------------------------------------------- 1 | import { StrictMode } from 'react' 2 | import { createRoot } from 'react-dom/client' 3 | import './index.css' 4 | import App from './App.tsx' 5 | 6 | createRoot(document.getElementById('root') as HTMLElement).render( 7 | 8 | 9 | 10 | ) 11 | -------------------------------------------------------------------------------- /apps/dispatcher/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "types": [ 5 | "@cloudflare/workers-types" 6 | ] 7 | }, 8 | "exclude": [ 9 | "./worker-configuration.d.ts", 10 | "public/inspect.js", 11 | "public/inspect.src.js" 12 | ] 13 | } -------------------------------------------------------------------------------- /apps/opennext-cache/src/index.ts: -------------------------------------------------------------------------------- 1 | export { DOQueueHandler } from "@opennextjs/cloudflare/durable-objects/queue"; 2 | export { DOShardedTagCache } from "@opennextjs/cloudflare/durable-objects/sharded-tag-cache"; 3 | 4 | export default { 5 | fetch: () => { 6 | return new Response("Hello from OpenNext Cache Worker!"); 7 | }, 8 | }; 9 | -------------------------------------------------------------------------------- /apps/email/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # email 2 | 3 | ## 1.0.1 4 | 5 | ### Patch Changes 6 | 7 | - update deps 8 | - Updated dependencies 9 | - @libra/email@1.0.5 10 | 11 | ## 1.0.0 12 | 13 | ### Major Changes 14 | 15 | - first release major version 16 | 17 | ### Patch Changes 18 | 19 | - Updated dependencies 20 | - @libra/email@1.0.0 21 | -------------------------------------------------------------------------------- /packages/db/drizzle/0001_sticky_blade.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE "project" ALTER COLUMN "deployment_status" SET DEFAULT 'idle';--> statement-breakpoint 2 | ALTER TABLE "subscription_limit" ADD COLUMN "last_quota_refresh" timestamp with time zone;--> statement-breakpoint 3 | ALTER TABLE "subscription_limit" ADD COLUMN "billing_interval" text DEFAULT 'month'; -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@3.1.1/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "restricted", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /packages/common/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/common 2 | 3 | ## 1.0.3 4 | 5 | ### Patch Changes 6 | 7 | - update deps 8 | 9 | ## 1.0.2 10 | 11 | ### Patch Changes 12 | 13 | - bug fix 14 | 15 | ## 1.0.1 16 | 17 | ### Patch Changes 18 | 19 | - deps update 20 | 21 | ## 1.0.0 22 | 23 | ### Major Changes 24 | 25 | - first release major version 26 | -------------------------------------------------------------------------------- /packages/sandbox/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "outDir": "dist", 5 | "rootDir": "src" 6 | }, 7 | "include": [ 8 | "src/**/*" 9 | ], 10 | "exclude": [ 11 | "node_modules", 12 | "dist", 13 | "**/*.test.ts", 14 | "**/*.spec.ts" 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /packages/sandbox/tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsup'; 2 | 3 | export default defineConfig({ 4 | entry: ['src/index.ts'], 5 | format: ['cjs', 'esm'], 6 | dts: true, 7 | clean: true, 8 | sourcemap: true, 9 | external: [ 10 | '@libra/common', 11 | 'e2b' 12 | ], 13 | splitting: false, 14 | treeshake: true, 15 | }); 16 | -------------------------------------------------------------------------------- /packages/shikicode/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/shikicode 2 | 3 | ## 1.0.3 4 | 5 | ### Patch Changes 6 | 7 | - update deps 8 | 9 | ## 1.0.2 10 | 11 | ### Patch Changes 12 | 13 | - bug fix 14 | 15 | ## 1.0.1 16 | 17 | ### Patch Changes 18 | 19 | - deps update 20 | 21 | ## 1.0.0 22 | 23 | ### Major Changes 24 | 25 | - first release major version 26 | -------------------------------------------------------------------------------- /apps/docs/content/opensource/meta.zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "开源", 3 | "description": "开源文档和指南", 4 | "icon": "BookOpen", 5 | "root": true, 6 | "pages": [ 7 | "---快速开始---", 8 | "getstarted/index", 9 | "getstarted/faq", 10 | 11 | "---最佳实践---", 12 | "bestpractice/index", 13 | 14 | "---开源---", 15 | "index" 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /apps/web/components/admin/index.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-License-Identifier: AGPL-3.0-only 3 | * index.ts 4 | * Copyright (C) 2025 Nextify Limited 5 | */ 6 | 7 | export { DataTable } from './data-table' 8 | export { UserActions } from './user-actions' 9 | export { UserManagementTable } from './user-management-table' 10 | export { columns } from './columns' 11 | -------------------------------------------------------------------------------- /apps/cdn/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "types": [] 5 | }, 6 | "include": [ 7 | "src/**/*", 8 | "worker-configuration.d.ts" 9 | ], 10 | "exclude": [ 11 | "public/inspect.js", 12 | "public/inspect.src.js", 13 | "../../packages/better-auth-stripe/**/*" 14 | ] 15 | } -------------------------------------------------------------------------------- /apps/docs/.source/source.config.mjs: -------------------------------------------------------------------------------- 1 | // source.config.ts 2 | import { defineConfig, defineDocs } from "fumadocs-mdx/config"; 3 | var docs = defineDocs({ 4 | dir: "content" 5 | }); 6 | var source_config_default = defineConfig({ 7 | mdxOptions: { 8 | // MDX options 9 | } 10 | }); 11 | export { 12 | source_config_default as default, 13 | docs 14 | }; 15 | -------------------------------------------------------------------------------- /apps/builder/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Libra AI 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- 1 | import { cn } from "@/lib/utils" 2 | 3 | function Skeleton({ 4 | className, 5 | ...props 6 | }: React.HTMLAttributes) { 7 | return ( 8 |
12 | ) 13 | } 14 | 15 | export { Skeleton } 16 | -------------------------------------------------------------------------------- /scripts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@scripts/*": ["./*"] 7 | }, 8 | "outDir": "dist", 9 | "declaration": true 10 | }, 11 | "include": ["*.ts", "../src/**/*.ts", "../src/**/*.tsx"], 12 | "exclude": ["node_modules", "dist"] 13 | } -------------------------------------------------------------------------------- /apps/docs/content/opensource/index.zh.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Libra 开源项目介绍 3 | --- 4 | 5 | # Libra 开源项目 6 | 7 | 欢迎了解 Libra 开源项目! 8 | 9 | ## 关于项目 10 | 11 | Libra 是一个开源的 AI 驱动开发平台,致力于让每个人都能轻松构建全栈 Web 应用程序。 12 | 13 | ## 参与贡献 14 | 15 | 我们欢迎社区的贡献!请访问我们的 [GitHub 仓库](https://github.com/nextify-limited/libra) 了解如何参与。 16 | 17 | ## 许可证 18 | 19 | Libra 采用 AGPL-3.0 许可证,确保项目保持开源和自由。 20 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- 1 | import { cn } from "@/lib/utils" 2 | 3 | function Skeleton({ 4 | className, 5 | ...props 6 | }: React.HTMLAttributes) { 7 | return ( 8 |
12 | ) 13 | } 14 | 15 | export { Skeleton } 16 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/.dev.vars.example: -------------------------------------------------------------------------------- 1 | # Cloudflare Workers Development Environment Variables 2 | # Copy this file to .dev.vars and fill in your values 3 | 4 | # Environment setting 5 | ENVIRONMENT=development 6 | 7 | # Add any additional environment variables your application needs 8 | # Example: 9 | # API_KEY=your-api-key-here 10 | # DATABASE_URL=your-database-url-here 11 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/collapsible.tsx: -------------------------------------------------------------------------------- 1 | import * as CollapsiblePrimitive from "@radix-ui/react-collapsible" 2 | 3 | const Collapsible = CollapsiblePrimitive.Root 4 | 5 | const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger 6 | 7 | const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent 8 | 9 | export { Collapsible, CollapsibleTrigger, CollapsibleContent } 10 | -------------------------------------------------------------------------------- /packages/email/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", 5 | "noPropertyAccessFromIndexSignature": false 6 | }, 7 | "include": [".","../../apps/web/cloudflare-env.d.ts", 8 | "../../apps/email/emails" 9 | ], 10 | "exclude": ["node_modules", "dist"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/auth/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@libra/better-auth-cloudflare": ["../better-auth-cloudflare"], 7 | "@libra/better-auth-cloudflare/*": ["../better-auth-cloudflare/*"] 8 | } 9 | }, 10 | "include": ["**/*.ts", "**/*.tsx","../../apps/web/cloudflare-env.d.ts"] 11 | } -------------------------------------------------------------------------------- /packages/middleware/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "rootDir": "./src", 5 | "composite": true, 6 | "declaration": true, 7 | "skipLibCheck": true 8 | }, 9 | "include": [ 10 | "src/**/*.ts" 11 | ], 12 | "exclude": [ 13 | "node_modules", 14 | "**/*.test.ts", 15 | "**/*.spec.ts", 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/components/ui/collapsible.tsx: -------------------------------------------------------------------------------- 1 | import * as CollapsiblePrimitive from "@radix-ui/react-collapsible" 2 | 3 | const Collapsible = CollapsiblePrimitive.Root 4 | 5 | const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger 6 | 7 | const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent 8 | 9 | export { Collapsible, CollapsibleTrigger, CollapsibleContent } 10 | -------------------------------------------------------------------------------- /packages/ui/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/ui 2 | 3 | ## 1.0.4 4 | 5 | ### Patch Changes 6 | 7 | - update deps 8 | 9 | ## 1.0.3 10 | 11 | ### Patch Changes 12 | 13 | - bug fix 14 | 15 | ## 1.0.2 16 | 17 | ### Patch Changes 18 | 19 | - update deps 20 | 21 | ## 1.0.1 22 | 23 | ### Patch Changes 24 | 25 | - update deps 26 | 27 | ## 1.0.0 28 | 29 | ### Major Changes 30 | 31 | - first release major version 32 | -------------------------------------------------------------------------------- /apps/docs/content/opensource/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Open Source", 3 | "description": "Open source documentation and guides", 4 | "icon": "BookOpen", 5 | "root": true, 6 | "pages": [ 7 | "---Getting Started---", 8 | "getstarted/index", 9 | "getstarted/faq", 10 | 11 | "---Best Practice---", 12 | "bestpractice/index", 13 | 14 | "---Open Source---", 15 | "index" 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /apps/opennext-cache/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tooling/typescript-config/base.json", 3 | "compilerOptions": { 4 | "lib": ["ES2024"], 5 | "types": ["@cloudflare/workers-types"], 6 | "moduleResolution": "bundler", 7 | "allowSyntheticDefaultImports": true, 8 | "esModuleInterop": true 9 | }, 10 | "include": ["src/**/*", "*.d.ts"], 11 | "exclude": ["node_modules", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /packages/sandbox/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/sandbox 2 | 3 | ## 1.0.2 4 | 5 | ### Patch Changes 6 | 7 | - bug fix 8 | - Updated dependencies 9 | - @libra/common@1.0.2 10 | 11 | ## 1.0.1 12 | 13 | ### Patch Changes 14 | 15 | - update deps 16 | 17 | ## 1.0.0 18 | 19 | ### Major Changes 20 | 21 | - first release major version 22 | 23 | ### Patch Changes 24 | 25 | - Updated dependencies 26 | - @libra/common@1.0.0 27 | -------------------------------------------------------------------------------- /packages/templates/DEV_ZH.md: -------------------------------------------------------------------------------- 1 | # Libra Templates 包目录结构 2 | ```bash 3 | packages/templates/ 4 | ├── DEV-ZH.md # 文档文件 5 | ├── package.json # 包依赖与脚本定义 6 | ├── tsconfig.json # TypeScript 配置 7 | ├── README.md # 包说明文档 8 | ├── index.ts # 模板配置导出 9 | ├── types.ts # 模板类型定义 10 | └── vite-shadcn-template.ts # Vite+shadcn UI 模板结构定义 11 | ``` 12 | -------------------------------------------------------------------------------- /apps/email/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "email", 3 | "version": "1.0.1", 4 | "private": true, 5 | "scripts": { 6 | "build": "email build", 7 | "dev": "email dev --port 3001", 8 | "update": "bun update" 9 | }, 10 | "dependencies": { 11 | "@libra/email": "*", 12 | "react-email": "^4.2.11" 13 | }, 14 | "devDependencies": { 15 | "@libra/typescript-config": "*", 16 | "@react-email/preview-server": "^4.2.11" 17 | } 18 | } -------------------------------------------------------------------------------- /packages/db/drizzle/meta/_journal.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "7", 3 | "dialect": "postgresql", 4 | "entries": [ 5 | { 6 | "idx": 0, 7 | "version": "7", 8 | "when": 1752239997146, 9 | "tag": "0000_smooth_hardball", 10 | "breakpoints": true 11 | }, 12 | { 13 | "idx": 1, 14 | "version": "7", 15 | "when": 1756822871709, 16 | "tag": "0001_sticky_blade", 17 | "breakpoints": true 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /scripts/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "libra-scripts", 3 | "version": "1.0.0", 4 | "description": "Utility scripts for Libra project", 5 | "type": "module", 6 | "main": "index.js", 7 | "scripts": { 8 | "init-env": "dotenv -e ../.env.prod -- bun init-env.ts" 9 | }, 10 | "dependencies": { 11 | "libsodium-wrappers": "^0.7.15", 12 | "@libra/typescript-config": "*" 13 | }, 14 | "devDependencies": { 15 | "@types/libsodium-wrappers": "^0.7.14" 16 | } 17 | } -------------------------------------------------------------------------------- /apps/builder/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": [], 3 | "references": [ 4 | { "path": "./tsconfig.app.json" }, 5 | { "path": "./tsconfig.node.json" } 6 | ], 7 | "compilerOptions": { 8 | "baseUrl": ".", 9 | "paths": { 10 | "@/*": ["./src/*"] 11 | }, 12 | "noImplicitAny": false, 13 | "noUnusedParameters": false, 14 | "skipLibCheck": true, 15 | "allowJs": true, 16 | "noUnusedLocals": false, 17 | "strictNullChecks": false 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /apps/builder/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | 26 | e2b.toml 27 | 28 | # Cloudflare Workers 29 | .wrangler 30 | .dev.vars 31 | worker-configuration.d.ts -------------------------------------------------------------------------------- /apps/web/project.inlang/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://inlang.com/schema/project-settings", 3 | "baseLocale": "en", 4 | "locales": [ 5 | "en", 6 | "zh" 7 | ], 8 | "modules": [ 9 | "https://cdn.jsdelivr.net/npm/@inlang/plugin-message-format@latest/dist/index.js", 10 | "https://cdn.jsdelivr.net/npm/@inlang/plugin-m-function-matcher@latest/dist/index.js" 11 | ], 12 | "plugin.inlang.messageFormat": { 13 | "pathPattern": "./messages/{locale}.json" 14 | } 15 | } -------------------------------------------------------------------------------- /packages/email/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/email 2 | 3 | ## 1.0.5 4 | 5 | ### Patch Changes 6 | 7 | - update deps 8 | 9 | ## 1.0.4 10 | 11 | ### Patch Changes 12 | 13 | - bug fix 14 | 15 | ## 1.0.3 16 | 17 | ### Patch Changes 18 | 19 | - update deps 20 | 21 | ## 1.0.2 22 | 23 | ### Patch Changes 24 | 25 | - mini update & fix 26 | 27 | ## 1.0.1 28 | 29 | ### Patch Changes 30 | 31 | - deps update 32 | 33 | ## 1.0.0 34 | 35 | ### Major Changes 36 | 37 | - first release major version 38 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": [], 3 | "references": [ 4 | { "path": "./tsconfig.app.json" }, 5 | { "path": "./tsconfig.node.json" } 6 | ], 7 | "compilerOptions": { 8 | "baseUrl": ".", 9 | "paths": { 10 | "@/*": ["./src/*"] 11 | }, 12 | "noImplicitAny": false, 13 | "noUnusedParameters": false, 14 | "skipLibCheck": true, 15 | "allowJs": true, 16 | "noUnusedLocals": false, 17 | "strictNullChecks": false 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /apps/builder/components.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://ui.shadcn.com/schema.json", 3 | "style": "default", 4 | "rsc": false, 5 | "tsx": true, 6 | "tailwind": { 7 | "config": "tailwind.config.ts", 8 | "css": "src/index.css", 9 | "baseColor": "slate", 10 | "cssVariables": true, 11 | "prefix": "" 12 | }, 13 | "aliases": { 14 | "components": "@/components", 15 | "utils": "@/lib/utils", 16 | "ui": "@/components/ui", 17 | "lib": "@/lib", 18 | "hooks": "@/hooks" 19 | } 20 | } -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/pages/Index.tsx: -------------------------------------------------------------------------------- 1 | const Index = () => { 2 | return ( 3 |
4 |
Libra AI
5 | {/* Navbar Section */} 6 | 7 | {/* Hero Section */} 8 | 9 | {/* Features Section */} 10 | 11 | {/* Community Section */} 12 | 13 | {/* Integration Section */} 14 | 15 | {/* Team Section */} 16 | 17 | {/* Footer */} 18 |
19 | ) 20 | } 21 | 22 | export default Index 23 | -------------------------------------------------------------------------------- /packages/templates/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/templates", 3 | "version": "1.0.0", 4 | "private": true, 5 | "description": "Template configurations for Libra platform", 6 | "type": "module", 7 | "main": "index.ts", 8 | "types": "./index.ts", 9 | "scripts": { 10 | "build": "tsup", 11 | "clean": "rm -rf dist .turbo node_modules", 12 | "typecheck": "tsc --noEmit", 13 | "update": "bun update" 14 | }, 15 | "devDependencies": { 16 | "@libra/typescript-config": "*" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /apps/builder/src/pages/Index.tsx: -------------------------------------------------------------------------------- 1 | const Index = () => { 2 | return ( 3 |
4 |
Libra AI
5 | {/* Navbar Section */} 6 | 7 | {/* Hero Section */} 8 | 9 | {/* Features Section */} 10 | 11 | {/* Community Section */} 12 | 13 | {/* Integration Section */} 14 | 15 | {/* Team Section */} 16 | 17 | {/* Footer */} 18 | {/**/} 19 |
20 | ) 21 | } 22 | 23 | export default Index 24 | -------------------------------------------------------------------------------- /packages/better-auth-stripe/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/better-auth-stripe 2 | 3 | ## 1.0.5 4 | 5 | ### Patch Changes 6 | 7 | - docs bug fix & deps update 8 | 9 | ## 1.0.4 10 | 11 | ### Patch Changes 12 | 13 | - update deps 14 | 15 | ## 1.0.3 16 | 17 | ### Patch Changes 18 | 19 | - bug fix 20 | 21 | ## 1.0.2 22 | 23 | ### Patch Changes 24 | 25 | - update deps 26 | 27 | ## 1.0.1 28 | 29 | ### Patch Changes 30 | 31 | - update deps 32 | 33 | ## 1.0.0 34 | 35 | ### Major Changes 36 | 37 | - first release major version 38 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/components.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://ui.shadcn.com/schema.json", 3 | "style": "default", 4 | "rsc": false, 5 | "tsx": true, 6 | "tailwind": { 7 | "config": "tailwind.config.ts", 8 | "css": "src/index.css", 9 | "baseColor": "slate", 10 | "cssVariables": true, 11 | "prefix": "" 12 | }, 13 | "aliases": { 14 | "components": "@/components", 15 | "utils": "@/lib/utils", 16 | "ui": "@/components/ui", 17 | "lib": "@/lib", 18 | "hooks": "@/hooks" 19 | } 20 | } -------------------------------------------------------------------------------- /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /apps/docs/content/platform/meta.zh.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Libra AI", 3 | "description": "平台特定功能和集成", 4 | "icon": "Server", 5 | "root": true, 6 | "pages": [ 7 | "---快速开始---", 8 | "index", 9 | "quickstart", 10 | "faq", 11 | "---使用 Libra---", 12 | "usinglibra/deploy/index", 13 | "usinglibra/directEdit/index", 14 | "usinglibra/timeMachine/index", 15 | "---使用指南---", 16 | "guides/effective-ai-communication", 17 | "---账户与账单---", 18 | "account/index", 19 | "---社区---", 20 | "community/index" 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | 26 | e2b.toml 27 | 28 | # Cloudflare Workers 29 | .wrangler 30 | .dev.vars 31 | worker-configuration.d.ts 32 | 33 | # Daytona 34 | daytona-snapshot.json 35 | .daytona/ -------------------------------------------------------------------------------- /packages/ui/components.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://ui.shadcn.com/schema.json", 3 | "style": "default", 4 | "rsc": true, 5 | "tsx": true, 6 | "tailwind": { 7 | "config": "", 8 | "css": "src/styles/globals.css", 9 | "baseColor": "neutral", 10 | "cssVariables": true 11 | }, 12 | "aliases": { 13 | "components": "@libra/ui/components", 14 | "utils": "@libra/ui/lib/utils", 15 | "hooks": "@libra/ui/hooks", 16 | "lib": "@libra/ui/lib", 17 | "ui": "@libra/ui/components" 18 | }, 19 | "iconLibrary": "lucide" 20 | } 21 | -------------------------------------------------------------------------------- /apps/cdn/.gitignore: -------------------------------------------------------------------------------- 1 | # prod 2 | dist/ 3 | 4 | # dev 5 | .yarn/ 6 | !.yarn/releases 7 | .vscode/* 8 | !.vscode/launch.json 9 | !.vscode/*.code-snippets 10 | .idea/workspace.xml 11 | .idea/usage.statistics.xml 12 | .idea/shelf 13 | 14 | # deps 15 | node_modules/ 16 | .wrangler 17 | 18 | # env 19 | .env 20 | .env.production 21 | .dev.vars 22 | 23 | # logs 24 | logs/ 25 | *.log 26 | npm-debug.log* 27 | yarn-debug.log* 28 | yarn-error.log* 29 | pnpm-debug.log* 30 | lerna-debug.log* 31 | 32 | # misc 33 | .DS_Store 34 | 35 | .cache 36 | public/inspect.src.js 37 | wrangler.jsonc -------------------------------------------------------------------------------- /apps/deploy/.gitignore: -------------------------------------------------------------------------------- 1 | # prod 2 | dist/ 3 | 4 | # dev 5 | .yarn/ 6 | !.yarn/releases 7 | .vscode/* 8 | !.vscode/launch.json 9 | !.vscode/*.code-snippets 10 | .idea/workspace.xml 11 | .idea/usage.statistics.xml 12 | .idea/shelf 13 | 14 | # deps 15 | node_modules/ 16 | .wrangler 17 | 18 | # env 19 | .env 20 | .env.production 21 | .dev.vars 22 | 23 | # logs 24 | logs/ 25 | *.log 26 | npm-debug.log* 27 | yarn-debug.log* 28 | yarn-error.log* 29 | pnpm-debug.log* 30 | lerna-debug.log* 31 | 32 | # misc 33 | .DS_Store 34 | 35 | .cache 36 | public/inspect.src.js 37 | wrangler.jsonc -------------------------------------------------------------------------------- /apps/auth-studio/DEV_ZH.md: -------------------------------------------------------------------------------- 1 | # @libra/auth-studio 开发指南 2 | 3 | > Drizzle Studio 数据库管理快捷工具 - 开发文档 4 | 5 | 版本:1.0.0 - 2025-07-30 6 | 最后更新:2025-07-30 7 | 8 | ## 目录 9 | 10 | - [概述](#概述) 11 | 12 | ## 概述 13 | 14 | `apps/auth-studio` 是 Libra 项目中的一个便捷启动器,用于快速访问认证数据库的 Drizzle Studio 管理界面。它本质上是一个脚本快捷方式,而不是独立的应用程序。 15 | 16 | **重要说明**: 这不是一个完整的应用程序,而是通过 `@libra/auth` 包提供的数据库管理工具的快速入口。 17 | 18 | --- 19 | 20 | **相关资源:** 21 | - [`@libra/auth` 包文档](../../packages/auth/DEV_ZH.md) 22 | - [Drizzle Studio 官方文档](https://orm.drizzle.team/drizzle-studio/overview) 23 | - [项目主文档](../../CLAUDE.md) -------------------------------------------------------------------------------- /apps/screenshot/.gitignore: -------------------------------------------------------------------------------- 1 | # prod 2 | dist/ 3 | 4 | # dev 5 | .yarn/ 6 | !.yarn/releases 7 | .vscode/* 8 | !.vscode/launch.json 9 | !.vscode/*.code-snippets 10 | .idea/workspace.xml 11 | .idea/usage.statistics.xml 12 | .idea/shelf 13 | 14 | # deps 15 | node_modules/ 16 | .wrangler 17 | 18 | # env 19 | .env 20 | .env.production 21 | .dev.vars 22 | 23 | # logs 24 | logs/ 25 | *.log 26 | npm-debug.log* 27 | yarn-debug.log* 28 | yarn-error.log* 29 | pnpm-debug.log* 30 | lerna-debug.log* 31 | 32 | # misc 33 | .DS_Store 34 | 35 | .cache 36 | public/inspect.src.js 37 | wrangler.jsonc -------------------------------------------------------------------------------- /apps/builder/wrangler.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "../../node_modules/wrangler/config-schema.json", 3 | "main": "src/worker.ts", 4 | "compatibility_date": "2025-09-03", 5 | "compatibility_flags": ["nodejs_compat", "global_fetch_strictly_public"], 6 | "assets": { 7 | "directory": "./dist/", 8 | "not_found_handling": "single-page-application", 9 | "binding": "ASSETS" 10 | }, 11 | "minify": true, 12 | "placement": { "mode": "smart" }, 13 | "observability": { 14 | "enabled": true 15 | }, 16 | "vars": { 17 | "ENVIRONMENT": "production" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /apps/deploy-workflow/.gitignore: -------------------------------------------------------------------------------- 1 | # prod 2 | dist/ 3 | 4 | # dev 5 | .yarn/ 6 | !.yarn/releases 7 | .vscode/* 8 | !.vscode/launch.json 9 | !.vscode/*.code-snippets 10 | .idea/workspace.xml 11 | .idea/usage.statistics.xml 12 | .idea/shelf 13 | 14 | # deps 15 | node_modules/ 16 | .wrangler 17 | 18 | # env 19 | .env 20 | .env.production 21 | .dev.vars 22 | 23 | # logs 24 | logs/ 25 | *.log 26 | npm-debug.log* 27 | yarn-debug.log* 28 | yarn-error.log* 29 | pnpm-debug.log* 30 | lerna-debug.log* 31 | 32 | # misc 33 | .DS_Store 34 | 35 | .cache 36 | public/inspect.src.js 37 | wrangler.jsonc -------------------------------------------------------------------------------- /apps/dispatcher/.gitignore: -------------------------------------------------------------------------------- 1 | # prod 2 | dist/ 3 | 4 | # dev 5 | .yarn/ 6 | !.yarn/releases 7 | .vscode/* 8 | !.vscode/launch.json 9 | !.vscode/*.code-snippets 10 | .idea/workspace.xml 11 | .idea/usage.statistics.xml 12 | .idea/shelf 13 | 14 | # deps 15 | node_modules/ 16 | .wrangler 17 | 18 | # env 19 | .env.prod 20 | .env.production 21 | .dev.vars 22 | 23 | # logs 24 | logs/ 25 | *.log 26 | npm-debug.log* 27 | yarn-debug.log* 28 | yarn-error.log* 29 | pnpm-debug.log* 30 | lerna-debug.log* 31 | 32 | # misc 33 | .DS_Store 34 | 35 | .cache 36 | public/inspect.src.js 37 | wrangler.jsonc -------------------------------------------------------------------------------- /packages/templates/DEV.md: -------------------------------------------------------------------------------- 1 | # Libra Templates Package Directory Structure 2 | 3 | ```bash 4 | packages/templates/ 5 | ├── DEV-ZH.md # Documentation file 6 | ├── package.json # Package dependencies and script definitions 7 | ├── tsconfig.json # TypeScript configuration 8 | ├── README.md # Package documentation 9 | ├── index.ts # Template configuration exports 10 | ├── types.ts # Template type definitions 11 | └── vite-shadcn-template.ts # Vite+shadcn UI template structure definition 12 | ``` 13 | -------------------------------------------------------------------------------- /apps/docs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@/.source": [ 7 | "./.source/index.ts" 8 | ], 9 | "@/*": [ 10 | "./*" 11 | ] 12 | }, 13 | "plugins": [ 14 | { 15 | "name": "next" 16 | } 17 | ] 18 | }, 19 | "include": [ 20 | "next-env.d.ts", 21 | "**/*.ts", 22 | "**/*.tsx", 23 | ".next/types/**/*.ts", 24 | "components/if.tsx" 25 | ], 26 | "exclude": [ 27 | "node_modules" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /apps/opennext-cache/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "opennext-cache", 3 | "version": "1.0.1", 4 | "private": true, 5 | "type": "module", 6 | "scripts": { 7 | "build": "echo 'Build completed'", 8 | "dev": "wrangler dev", 9 | "deploy": "wrangler deploy", 10 | "cf-typegen": "wrangler types --env-interface CloudflareEnv cloudflare-env.d.ts" 11 | }, 12 | "dependencies": { 13 | "@opennextjs/cloudflare": "^1.6.2" 14 | }, 15 | "devDependencies": { 16 | "@cloudflare/workers-types": "^4.20250723.0", 17 | "typescript": "^5.8.3", 18 | "wrangler": "^3.0.0" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/wrangler.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "../../node_modules/wrangler/config-schema.json", 3 | "name": "vite-shadcn-template", 4 | "main": "src/worker.ts", 5 | "compatibility_date": "2025-09-03", 6 | "compatibility_flags": [ 7 | "nodejs_compat", 8 | "global_fetch_strictly_public" 9 | ], 10 | "assets": { 11 | "directory": "./dist/", 12 | "not_found_handling": "single-page-application", 13 | "binding": "ASSETS" 14 | }, 15 | "minify": true, 16 | "placement": { "mode": "smart" } 17 | // "observability": { 18 | // "enabled": true 19 | // } 20 | } 21 | -------------------------------------------------------------------------------- /apps/builder/BUILDER.md: -------------------------------------------------------------------------------- 1 | 2 | ```bash 3 | e2b template build --cpu-count 2 -n "vite-shadcn-template-builder-libra" --memory-mb 4096 -c "cd /home/user/vite-shadcn-template-builder-libra" 4 | ``` 5 | 6 | ## 7 | 8 | ### Docker Build command 9 | ```bash 10 | docker buildx build --platform linux/amd64 -t vite-shadcn-template-builder-libra:1.0.0 -f Dockerfile . 11 | ``` 12 | 13 | ### Use the Daytona snapshot push command 14 | ```bash 15 | daytona snapshot push vite-shadcn-template-builder-libra:1.0.0 --entrypoint "bun run dev --host 0.0.0.0" --name vite-shadcn-template-builder-libra:1.0.0 --cpu 2 --memory 4 --disk 1 16 | ``` -------------------------------------------------------------------------------- /apps/builder/e2b.toml.example: -------------------------------------------------------------------------------- 1 | # This is a config for E2B sandbox template. 2 | # You can use template ID (t01p49s8glt6jzii4hmu) to create a sandbox: 3 | 4 | # Python SDK 5 | # from e2b import Sandbox, AsyncSandbox 6 | # sandbox = Sandbox("t01p49s8glt6jzii4hmu") # Sync sandbox 7 | # sandbox = await AsyncSandbox.create("t01p49s8glt6jzii4hmu") # Async sandbox 8 | 9 | # JS SDK 10 | # import { Sandbox } from 'e2b' 11 | # const sandbox = await Sandbox.create('t01p49s8glt6jzii4hmu') 12 | 13 | team_id = "" 14 | memory_mb = 2028 15 | cpu_count = 2 16 | template_name = "" 17 | dockerfile = "e2b.Dockerfile" 18 | template_id = "" 19 | -------------------------------------------------------------------------------- /apps/docs/content/platform/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Libra AI", 3 | "description": "Platform specific features and integrations", 4 | "icon": "Server", 5 | "root": true, 6 | "pages": [ 7 | "---Quickstart---", 8 | "index", 9 | "quickstart", 10 | "faq", 11 | "---Using Libra---", 12 | "usinglibra/deploy/index", 13 | "usinglibra/directEdit/index", 14 | "usinglibra/timeMachine/index", 15 | "---Guides---", 16 | "guides/effective-ai-communication", 17 | "---Account & Billing---", 18 | "account/index", 19 | "---Community---", 20 | "community/index" 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/prepare-daytona.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | function ping_server() { 4 | counter=0 5 | response=$(curl -s -o /dev/null -w "%{http_code}" "http://localhost:5173") 6 | while [[ ${response} -ne 200 ]]; do 7 | let counter++ 8 | if (( counter % 20 == 0 )); then 9 | echo "Waiting for Daytona server to start..." 10 | sleep 0.1 11 | fi 12 | 13 | response=$(curl -s -o /dev/null -w "%{http_code}" "http://localhost:5173") 14 | done 15 | echo "Daytona server is ready!" 16 | } 17 | 18 | cd /home/user/vite-shadcn-template-libra 19 | 20 | ping_server & 21 | 22 | bun dev --host 0.0.0.0 23 | -------------------------------------------------------------------------------- /apps/builder/vite.config.ts: -------------------------------------------------------------------------------- 1 | import path from 'node:path' 2 | import tailwindcss from '@tailwindcss/vite' 3 | import react from '@vitejs/plugin-react-swc' 4 | import { defineConfig } from 'vite' 5 | 6 | // https://vitejs.dev/config/ 7 | // @ts-ignore 8 | export default defineConfig(({ mode }) => { 9 | return { 10 | server: { 11 | host: "::", 12 | port: 5173, 13 | allowedHosts: true 14 | }, 15 | plugins: [ 16 | react(), 17 | tailwindcss(), 18 | ].filter(Boolean), 19 | resolve: { 20 | alias: { 21 | "@": path.resolve(__dirname, "./src"), 22 | }, 23 | } 24 | }; 25 | }); -------------------------------------------------------------------------------- /apps/vite-shadcn-template/e2b.toml.example: -------------------------------------------------------------------------------- 1 | # This is a config for E2B sandbox template. 2 | # You can use template ID (t01p49s8glt6jzii4hmu) to create a sandbox: 3 | 4 | # Python SDK 5 | # from e2b import Sandbox, AsyncSandbox 6 | # sandbox = Sandbox("t01p49s8glt6jzii4hmu") # Sync sandbox 7 | # sandbox = await AsyncSandbox.create("t01p49s8glt6jzii4hmu") # Async sandbox 8 | 9 | # JS SDK 10 | # import { Sandbox } from 'e2b' 11 | # const sandbox = await Sandbox.create('t01p49s8glt6jzii4hmu') 12 | 13 | team_id = "" 14 | memory_mb = 512 15 | cpu_count = 1 16 | template_name = "" 17 | dockerfile = "e2b.Dockerfile" 18 | template_id = "" 19 | -------------------------------------------------------------------------------- /apps/screenshot/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config' 2 | 3 | export default defineConfig({ 4 | test: { 5 | globals: true, 6 | environment: 'miniflare', 7 | environmentOptions: { 8 | modules: true, 9 | compatibilityDate: '2025-07-17', 10 | compatibilityFlags: ['nodejs_compat', 'global_fetch_strictly_public'], 11 | }, 12 | coverage: { 13 | provider: 'v8', 14 | reporter: ['text', 'json', 'html'], 15 | exclude: [ 16 | 'node_modules/**', 17 | 'dist/**', 18 | '**/*.d.ts', 19 | '**/*.config.*', 20 | '**/coverage/**', 21 | ], 22 | }, 23 | }, 24 | }) 25 | -------------------------------------------------------------------------------- /apps/dispatcher/.dev.vars.example: -------------------------------------------------------------------------------- 1 | # Development environment variables for dispatcher 2 | # Copy this file to .dev.vars and fill in the actual values 3 | 4 | # GitHub OAuth (required for auth) 5 | BETTER_GITHUB_CLIENT_ID= 6 | BETTER_GITHUB_CLIENT_SECRET= 7 | 8 | # Cloudflare settings (required for dispatcher operations) 9 | CLOUDFLARE_ACCOUNT_ID= 10 | DATABASE_ID= 11 | CLOUDFLARE_API_TOKEN= 12 | 13 | # Security (required for auth) 14 | TURNSTILE_SECRET_KEY= 15 | 16 | # Optional variables 17 | STRIPE_SECRET_KEY= 18 | STRIPE_WEBHOOK_SECRET= 19 | 20 | # Email (optional for dispatcher) 21 | RESEND_FROM= 22 | RESEND_API_KEY= 23 | 24 | # Database (optional for dispatcher) 25 | POSTGRES_URL= -------------------------------------------------------------------------------- /packages/better-auth-stripe/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ESNext", "DOM"], 4 | "target": "ESNext", 5 | "module": "ESNext", 6 | "moduleDetection": "force", 7 | "jsx": "react-jsx", 8 | "allowJs": true, 9 | "moduleResolution": "bundler", 10 | "verbatimModuleSyntax": true, 11 | "declaration": true, 12 | "strict": true, 13 | "skipLibCheck": true, 14 | "noFallthroughCasesInSwitch": true, 15 | "noUnusedLocals": false, 16 | "noUnusedParameters": false, 17 | "noPropertyAccessFromIndexSignature": false, 18 | "outDir": "./dist" 19 | }, 20 | "exclude": ["node_modules", "dist"], 21 | "include": ["src"] 22 | } -------------------------------------------------------------------------------- /apps/vite-shadcn-template/daytona.Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:24.3.0-bookworm-slim 2 | 3 | USER root 4 | 5 | RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/* \ 6 | && npm install -g bun 7 | 8 | COPY prepare-daytona.sh /prepare-daytona.sh 9 | RUN chmod +x /prepare-daytona.sh 10 | 11 | RUN mkdir -p /home/user/vite-shadcn-template-libra 12 | WORKDIR /home/user/vite-shadcn-template-libra 13 | 14 | ENV VITE_INSPECTOR_URL=https://cdn.libra.dev 15 | 16 | COPY . . 17 | 18 | RUN rm -f prepare-daytona.sh 19 | 20 | RUN bun install 21 | 22 | RUN mkdir -p .wrangler/tmp && \ 23 | chmod -R 755 .wrangler || true 24 | 25 | EXPOSE 5173 26 | 27 | CMD ["/prepare-daytona.sh"] 28 | -------------------------------------------------------------------------------- /apps/builder/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", 4 | "target": "ES2024", 5 | "lib": [ 6 | "ES2024" 7 | ], 8 | "module": "ESNext", 9 | "skipLibCheck": true, 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "isolatedModules": true, 13 | "moduleDetection": "force", 14 | "noEmit": true, 15 | "strict": true, 16 | "noUnusedLocals": true, 17 | "noUnusedParameters": true, 18 | "noFallthroughCasesInSwitch": true, 19 | "noUncheckedSideEffectImports": true 20 | }, 21 | "include": [ 22 | "vite.config.ts" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /apps/docs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/docs", 3 | "version": "1.0.9", 4 | "private": true, 5 | "scripts": { 6 | "build": "next build", 7 | "dev": "bun next dev --turbo -p 3003", 8 | "cf-typegen": "wrangler types --env-interface CloudflareEnv cloudflare-env.d.ts", 9 | "update": "bun update" 10 | }, 11 | "dependencies": { 12 | "fumadocs-core": "^15.7.13", 13 | "fumadocs-mdx": "^11.10.1", 14 | "fumadocs-ui": "^15.7.13", 15 | "motion": "^12.23.19", 16 | "octokit": "^5.0.3", 17 | "@orama/tokenizers": "^3.1.14", 18 | "@orama/orama": "^3.1.14", 19 | "zod": "^4.1.11" 20 | }, 21 | "devDependencies": { 22 | "@types/mdx": "^2.0.13" 23 | } 24 | } -------------------------------------------------------------------------------- /apps/vite-shadcn-template/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", 4 | "target": "ES2024", 5 | "lib": [ 6 | "ES2024" 7 | ], 8 | "module": "ESNext", 9 | "skipLibCheck": true, 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "isolatedModules": true, 13 | "moduleDetection": "force", 14 | "noEmit": true, 15 | "strict": true, 16 | "noUnusedLocals": true, 17 | "noUnusedParameters": true, 18 | "noFallthroughCasesInSwitch": true, 19 | "noUncheckedSideEffectImports": true 20 | }, 21 | "include": [ 22 | "vite.config.ts" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /apps/cdn/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/cdn", 3 | "version": "1.0.6", 4 | "scripts": { 5 | "dev": "wrangler dev --port 3004 --persist-to=../web/.wrangler/state", 6 | "deploy": "wrangler deploy --minify", 7 | "cf-typegen": "wrangler types --env-interface CloudflareBindings", 8 | "typecheck": "tsc --noEmit", 9 | "update": "bun update" 10 | }, 11 | "dependencies": { 12 | "@libra/auth": "*", 13 | "@libra/db": "*", 14 | "@libra/middleware": "*", 15 | "@libra/typescript-config": "*", 16 | "hono": "^4.9.8", 17 | "@scalar/hono-api-reference": "^0.9.19", 18 | "@hono/zod-openapi": "^0.19.10" 19 | }, 20 | "devDependencies": { 21 | "wrangler": "4.27.0" 22 | } 23 | } -------------------------------------------------------------------------------- /packages/db/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/db", 3 | "version": "1.0.1", 4 | "private": true, 5 | "description": "Database schemas and utilities for Libra", 6 | "main": "index.ts", 7 | "types": "./index.ts", 8 | "type": "module", 9 | "scripts": { 10 | "db:generate": "bun with-env drizzle-kit generate", 11 | "db:migrate": "bun with-env bunx drizzle-kit migrate", 12 | "with-env": "dotenv -e ../../.env --", 13 | "update": "bun update" 14 | }, 15 | "dependencies": { 16 | "@libra/common": "*", 17 | "@paralleldrive/cuid2": "^2.2.2", 18 | "pg": "^8.16.3" 19 | }, 20 | "devDependencies": { 21 | "@types/pg": "^8.15.5", 22 | "@libra/typescript-config": "*" 23 | } 24 | } -------------------------------------------------------------------------------- /apps/deploy/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@/*": ["./src/*"], 7 | "@/types/*": ["./src/types/*"], 8 | "@/queue/*": ["./src/queue/*"], 9 | "@/deployment/*": ["./src/deployment/*"], 10 | "@/storage/*": ["./src/storage/*"], 11 | "@/api/*": ["./src/api/*"], 12 | "@/utils/*": ["./src/utils/*"] 13 | }, 14 | "types": [ 15 | "@cloudflare/workers-types", 16 | "node" 17 | ] 18 | }, 19 | "include": [ 20 | "src/**/*", 21 | "worker-configuration.d.ts" 22 | ], 23 | "exclude": [ 24 | "node_modules", 25 | "dist", 26 | ".wrangler" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /apps/screenshot/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@/*": ["./src/*"], 7 | "@/types/*": ["./src/types/*"], 8 | "@/queue/*": ["./src/queue/*"], 9 | "@/deployment/*": ["./src/deployment/*"], 10 | "@/storage/*": ["./src/storage/*"], 11 | "@/api/*": ["./src/api/*"], 12 | "@/utils/*": ["./src/utils/*"] 13 | }, 14 | "types": [ 15 | "@cloudflare/workers-types", 16 | "node" 17 | ] 18 | }, 19 | "include": [ 20 | "src/**/*", 21 | "worker-configuration.d.ts" 22 | ], 23 | "exclude": [ 24 | "node_modules", 25 | "dist", 26 | ".wrangler" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /apps/builder/e2b.Dockerfile: -------------------------------------------------------------------------------- 1 | # use the official Bun image 2 | # see all versions at https://hub.docker.com/r/oven/bun/tags 3 | FROM oven/bun:slim AS base 4 | 5 | # Create and set working directory 6 | WORKDIR /home/user/vite-shadcn-template-builder-libra 7 | 8 | 9 | # Copy everything from the current directory into working directory 10 | COPY . . 11 | 12 | # Run bun install in the project directory 13 | RUN bun install 14 | 15 | # Fix permissions for Wrangler directory creation 16 | # Create .wrangler directory and set proper permissions 17 | RUN mkdir -p .wrangler/tmp && \ 18 | chmod -R 777 .wrangler && \ 19 | chmod -R 755 /home/user/vite-shadcn-template-builder-libra || true 20 | 21 | # Run the development server 22 | CMD ["bun", "run", "dev"] -------------------------------------------------------------------------------- /packages/email/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/email", 3 | "version": "1.0.5", 4 | "private": true, 5 | "description": "Email templates and utilities for Libra", 6 | "main": "index.ts", 7 | "types": "./index.ts", 8 | "type": "module", 9 | "scripts": { 10 | "build": "tsup", 11 | "clean": "rm -rf dist .turbo node_modules", 12 | "typecheck": "tsc --noEmit", 13 | "with-env": "dotenv -e ../../.env --", 14 | "update": "bun update" 15 | }, 16 | "dependencies": { 17 | "@react-email/components": "^0.3.3", 18 | "@react-email/tailwind": "^1.2.2", 19 | "@t3-oss/env-nextjs": "^0.11.1", 20 | "resend": "^4.8.0", 21 | "zod": "^4.1.11" 22 | }, 23 | "devDependencies": { 24 | "@libra/typescript-config": "*" 25 | } 26 | } -------------------------------------------------------------------------------- /apps/docs/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/docs 2 | 3 | ## 1.0.9 4 | 5 | ### Patch Changes 6 | 7 | - docs bug fix & deps update 8 | 9 | ## 1.0.8 10 | 11 | ### Patch Changes 12 | 13 | - update deps 14 | 15 | ## 1.0.7 16 | 17 | ### Patch Changes 18 | 19 | - bug fix 20 | 21 | ## 1.0.6 22 | 23 | ### Patch Changes 24 | 25 | - update deps 26 | 27 | ## 1.0.5 28 | 29 | ### Patch Changes 30 | 31 | - update deps 32 | 33 | ## 1.0.4 34 | 35 | ### Patch Changes 36 | 37 | - update deps 38 | 39 | ## 1.0.3 40 | 41 | ### Patch Changes 42 | 43 | - mini update & fix 44 | 45 | ## 1.0.2 46 | 47 | ### Patch Changes 48 | 49 | - update deps 50 | 51 | ## 1.0.1 52 | 53 | ### Patch Changes 54 | 55 | - deps update 56 | 57 | ## 1.0.0 58 | 59 | ### Major Changes 60 | 61 | - first release major version 62 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/e2b.Dockerfile: -------------------------------------------------------------------------------- 1 | # Use the official Node.js image 2 | # see all versions at https://hub.docker.com/_/node/tags 3 | FROM node:24.3.0-bookworm 4 | 5 | # Install pnpm globally 6 | RUN npm install -g bun 7 | 8 | COPY compile_page.sh /compile_page.sh 9 | RUN chmod +x /compile_page.sh 10 | 11 | # Create and set working directory 12 | RUN mkdir -p /home/user/vite-shadcn-template-libra 13 | WORKDIR /home/user/vite-shadcn-template-libra 14 | 15 | ENV VITE_INSPECTOR_URL=https://cdn.libra.dev 16 | 17 | # Copy everything from the current directory into working directory 18 | COPY . . 19 | 20 | # Remove duplicate script from working directory (we want it only in container root) 21 | RUN rm -f compile_page.sh 22 | 23 | # Run pnpm install in the project directory 24 | RUN bun install -------------------------------------------------------------------------------- /apps/opennext-cache/wrangler.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "../../node_modules/wrangler/config-schema.json", 3 | "main": "src/index.ts", 4 | "name": "opennext-cache", 5 | "compatibility_date": "2025-09-03", 6 | "compatibility_flags": [ 7 | "nodejs_compat" 8 | ], 9 | // DO Queue and DO Sharded Tag Cache 10 | "durable_objects": { 11 | "bindings": [ 12 | { 13 | "name": "NEXT_CACHE_DO_QUEUE", 14 | "class_name": "DOQueueHandler" 15 | }, 16 | { 17 | "name": "NEXT_TAG_CACHE_DO_SHARDED", 18 | "class_name": "DOShardedTagCache" 19 | } 20 | ] 21 | }, 22 | "migrations": [ 23 | { 24 | "tag": "v1", 25 | "new_sqlite_classes": [ 26 | "DOQueueHandler", 27 | "DOShardedTagCache" 28 | ] 29 | } 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /packages/better-auth-cloudflare/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ESNext", "DOM"], 4 | "target": "ESNext", 5 | "module": "ESNext", 6 | "moduleDetection": "force", 7 | "jsx": "react-jsx", 8 | "allowJs": true, 9 | "moduleResolution": "bundler", 10 | "verbatimModuleSyntax": true, 11 | "declaration": true, 12 | "strict": true, 13 | "skipLibCheck": true, 14 | "noFallthroughCasesInSwitch": true, 15 | "noUnusedLocals": false, 16 | "noUnusedParameters": false, 17 | "noPropertyAccessFromIndexSignature": false, 18 | "outDir": "./dist", 19 | "types": ["@cloudflare/workers-types"] 20 | }, 21 | "include": ["*.ts", "src/**/*.ts"], 22 | "exclude": ["dist", "dist/**/*", "build.ts", "node_modules"] 23 | } -------------------------------------------------------------------------------- /apps/builder/src/App.css: -------------------------------------------------------------------------------- 1 | #root { 2 | max-width: 1280px; 3 | margin: 0 auto; 4 | padding: 2rem; 5 | text-align: center; 6 | } 7 | 8 | .logo { 9 | height: 6em; 10 | padding: 1.5em; 11 | will-change: filter; 12 | transition: filter 300ms; 13 | } 14 | .logo:hover { 15 | filter: drop-shadow(0 0 2em #646cffaa); 16 | } 17 | .logo.react:hover { 18 | filter: drop-shadow(0 0 2em #61dafbaa); 19 | } 20 | 21 | @keyframes logo-spin { 22 | from { 23 | transform: rotate(0deg); 24 | } 25 | to { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | 30 | @media (prefers-reduced-motion: no-preference) { 31 | a:nth-of-type(2) .logo { 32 | animation: logo-spin infinite 20s linear; 33 | } 34 | } 35 | 36 | .card { 37 | padding: 2em; 38 | } 39 | 40 | .read-the-docs { 41 | color: #888; 42 | } 43 | -------------------------------------------------------------------------------- /apps/docs/.gitignore: -------------------------------------------------------------------------------- 1 | **/node_modules 2 | .yarn/* 3 | !.yarn/patches 4 | !.yarn/plugins 5 | !.yarn/releases 6 | !.yarn/sdks 7 | !.yarn/versions 8 | 9 | # expo 10 | **/.expo/* 11 | **/expo-env.d.ts 12 | 13 | # next.js 14 | **/.next/* 15 | /out/ 16 | 17 | # production 18 | /build 19 | 20 | # debug 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | .bun-debug.log* 25 | 26 | # local env files 27 | **.env 28 | .env.local 29 | .env.development.local 30 | .env.test.local 31 | .env.production.local 32 | 33 | # vercel 34 | .vercel 35 | 36 | # typescript 37 | *.tsbuildinfo 38 | 39 | # os 40 | .DS_Store 41 | THUMBS_DB 42 | thumbs.db 43 | 44 | # ui 45 | 46 | dist/ 47 | .DS_Store 48 | THUMBS_DB 49 | node_modules/ 50 | 51 | # Cloudflare D1 52 | **/.wrangler/* 53 | **/.dev.vars 54 | .turbo 55 | 56 | .idea/ 57 | .open-next -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/App.css: -------------------------------------------------------------------------------- 1 | #root { 2 | max-width: 1280px; 3 | margin: 0 auto; 4 | padding: 2rem; 5 | text-align: center; 6 | } 7 | 8 | .logo { 9 | height: 6em; 10 | padding: 1.5em; 11 | will-change: filter; 12 | transition: filter 300ms; 13 | } 14 | .logo:hover { 15 | filter: drop-shadow(0 0 2em #646cffaa); 16 | } 17 | .logo.react:hover { 18 | filter: drop-shadow(0 0 2em #61dafbaa); 19 | } 20 | 21 | @keyframes logo-spin { 22 | from { 23 | transform: rotate(0deg); 24 | } 25 | to { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | 30 | @media (prefers-reduced-motion: no-preference) { 31 | a:nth-of-type(2) .logo { 32 | animation: logo-spin infinite 20s linear; 33 | } 34 | } 35 | 36 | .card { 37 | padding: 2em; 38 | } 39 | 40 | .read-the-docs { 41 | color: #888; 42 | } 43 | -------------------------------------------------------------------------------- /apps/deploy-workflow/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/deploy-workflow", 3 | "version": "1.0.5", 4 | "scripts": { 5 | "dev": "wrangler dev --port 3008 --persist-to=../web/.wrangler/state", 6 | "deploy": "wrangler deploy --minify", 7 | "cf-typegen": "wrangler types --env-interface CloudflareBindings", 8 | "typecheck": "tsc --noEmit", 9 | "update": "bun update" 10 | }, 11 | "dependencies": { 12 | "@libra/auth": "*", 13 | "@libra/common": "*", 14 | "@libra/db": "*", 15 | "@libra/middleware": "*", 16 | "@libra/sandbox": "*", 17 | "@libra/templates": "*", 18 | "@libra/typescript-config": "*", 19 | "hono": "^4.9.8", 20 | "@scalar/hono-api-reference": "^0.9.19", 21 | "@hono/zod-openapi": "^0.19.10" 22 | }, 23 | "devDependencies": { 24 | "wrangler": "4.27.0" 25 | } 26 | } -------------------------------------------------------------------------------- /apps/web/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@libra/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": "../..", 5 | "paths": { 6 | "@/*": ["./apps/web/*"], 7 | "@libra/ui/*": ["../../packages/ui/src/*"], 8 | "@libra/shikicode": ["./packages/shikicode/src/index.ts"], 9 | "@libra/shikicode/*": ["./packages/shikicode/src/*"], 10 | "@payload-config": ["./payload.config.ts"] 11 | }, 12 | "plugins": [ 13 | { 14 | "name": "next" 15 | } 16 | ] 17 | }, 18 | "include": [ 19 | "next-env.d.ts", 20 | "next.config.mjs", 21 | "**/*.ts", 22 | "**/*.tsx", 23 | ".next/types/**/*.ts", 24 | "cloudflare-env.d.ts", 25 | "imageLoader.ts" 26 | ], 27 | "exclude": ["node_modules", "paraglide", "../../packages/better-auth-stripe/**/*"] 28 | } 29 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/label.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | import * as LabelPrimitive from "@radix-ui/react-label" 3 | import { cva, type VariantProps } from "class-variance-authority" 4 | 5 | import { cn } from "@/lib/utils" 6 | 7 | const labelVariants = cva( 8 | "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" 9 | ) 10 | 11 | const Label = React.forwardRef< 12 | React.ElementRef, 13 | React.ComponentPropsWithoutRef & 14 | VariantProps 15 | >(({ className, ...props }, ref) => ( 16 | 21 | )) 22 | Label.displayName = LabelPrimitive.Root.displayName 23 | 24 | export { Label } 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | **/node_modules 2 | .yarn/* 3 | !.yarn/patches 4 | !.yarn/plugins 5 | !.yarn/releases 6 | !.yarn/sdks 7 | !.yarn/versions 8 | 9 | # expo 10 | **/.expo/* 11 | **/expo-env.d.ts 12 | 13 | # next.js 14 | **/.next/* 15 | /out/ 16 | 17 | # production 18 | /build 19 | 20 | # debug 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | .bun-debug.log* 25 | 26 | # local env files 27 | .env 28 | **.env 29 | .env.local 30 | .env.development.local 31 | .env.test.local 32 | .env.production.local 33 | .env.prod 34 | .env.staging 35 | 36 | # vercel 37 | .vercel 38 | 39 | # typescript 40 | *.tsbuildinfo 41 | 42 | # os 43 | .DS_Store 44 | THUMBS_DB 45 | thumbs.db 46 | 47 | # ui 48 | 49 | dist/ 50 | .DS_Store 51 | THUMBS_DB 52 | node_modules/ 53 | 54 | # Cloudflare D1 55 | **/.wrangler/* 56 | **/.dev.vars 57 | .turbo 58 | 59 | .idea/ 60 | -------------------------------------------------------------------------------- /apps/web/components/ide/libra/github-integration/__tests__/github-modal.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * Basic component validation tests 3 | */ 4 | 5 | import { describe, expect, it } from 'vitest' 6 | 7 | import GitHubModal from '../github-modal' 8 | 9 | describe('GitHubModal Component Validation', () => { 10 | it('should export GitHubModal component', () => { 11 | expect(GitHubModal).toBeDefined() 12 | expect(typeof GitHubModal).toBe('function') 13 | }) 14 | 15 | it('should have proper TypeScript types', () => { 16 | // Basic type checking - the component should accept the expected props 17 | const props = { 18 | open: true, 19 | onClose: () => {}, 20 | projectId: 'test-id' 21 | } 22 | 23 | // If this compiles without TypeScript errors, the types are correct 24 | expect(props).toBeDefined() 25 | }) 26 | }) 27 | -------------------------------------------------------------------------------- /packages/api/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/api", 3 | "version": "1.0.0", 4 | "exports": { 5 | ".": "./src/index.ts" 6 | }, 7 | "typesVersions": { 8 | "*": { 9 | "*": [ 10 | "src/*" 11 | ] 12 | } 13 | }, 14 | "scripts": { 15 | "build": "tsup", 16 | "clean": "rm -rf dist .turbo node_modules", 17 | "format-and-lint": "biome check .", 18 | "format-and-lint:fix": "biome check . --write", 19 | "typecheck": "tsc --noEmit", 20 | "update": "bun update" 21 | }, 22 | "dependencies": { 23 | "@libra/auth": "*", 24 | "@libra/common": "*", 25 | "@libra/sandbox": "*", 26 | "superjson": "^2.2.2", 27 | "dinero.js": "^2.0.0-alpha.14", 28 | "@dinero.js/currencies": "^2.0.0-alpha.14" 29 | }, 30 | "devDependencies": { 31 | "@libra/typescript-config": "*" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/components/ui/label.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | import * as LabelPrimitive from "@radix-ui/react-label" 3 | import { cva, type VariantProps } from "class-variance-authority" 4 | 5 | import { cn } from "@/lib/utils" 6 | 7 | const labelVariants = cva( 8 | "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" 9 | ) 10 | 11 | const Label = React.forwardRef< 12 | React.ElementRef, 13 | React.ComponentPropsWithoutRef & 14 | VariantProps 15 | >(({ className, ...props }, ref) => ( 16 | 21 | )) 22 | Label.displayName = LabelPrimitive.Root.displayName 23 | 24 | export { Label } 25 | -------------------------------------------------------------------------------- /apps/web/components/ide/libra/github-integration/__tests__/install-step.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * Basic component validation tests 3 | */ 4 | 5 | import { describe, expect, it } from 'vitest' 6 | 7 | import { InstallStep } from '../steps/install-step' 8 | 9 | describe('InstallStep Component Validation', () => { 10 | it('should export InstallStep component', () => { 11 | expect(InstallStep).toBeDefined() 12 | expect(typeof InstallStep).toBe('function') 13 | }) 14 | 15 | it('should have proper TypeScript types', () => { 16 | // Basic type checking - the component should accept the expected props 17 | const props = { 18 | isLoading: false, 19 | error: null, 20 | onInstall: () => {} 21 | } 22 | 23 | // If this compiles without TypeScript errors, the types are correct 24 | expect(props).toBeDefined() 25 | }) 26 | 27 | }) 28 | -------------------------------------------------------------------------------- /apps/builder/src/App.tsx: -------------------------------------------------------------------------------- 1 | import {Toaster} from "@/components/ui/toaster"; 2 | import {Toaster as Sonner} from "@/components/ui/sonner"; 3 | import {TooltipProvider} from "@/components/ui/tooltip"; 4 | import {QueryClient, QueryClientProvider} from "@tanstack/react-query"; 5 | import {BrowserRouter, Routes, Route} from "react-router-dom"; 6 | import Index from "./pages/Index"; 7 | 8 | const queryClient = new QueryClient(); 9 | 10 | const App = () => ( 11 | 12 | 13 | 14 | 15 | 16 | 17 | }/> 18 | 19 | 20 | 21 | 22 | ); 23 | 24 | export default App; 25 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/src/App.tsx: -------------------------------------------------------------------------------- 1 | import {Toaster} from "@/components/ui/toaster"; 2 | import {Toaster as Sonner} from "@/components/ui/sonner"; 3 | import {TooltipProvider} from "@/components/ui/tooltip"; 4 | import {QueryClient, QueryClientProvider} from "@tanstack/react-query"; 5 | import {BrowserRouter, Routes, Route} from "react-router-dom"; 6 | import Index from "./pages/Index"; 7 | 8 | const queryClient = new QueryClient(); 9 | 10 | const App = () => ( 11 | 12 | 13 | 14 | 15 | 16 | 17 | }/> 18 | 19 | 20 | 21 | 22 | ); 23 | 24 | export default App; 25 | -------------------------------------------------------------------------------- /packages/sandbox/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@libra/sandbox", 3 | "version": "1.0.2", 4 | "private": true, 5 | "description": "Sandbox utilities and types for Libra", 6 | "exports": { 7 | ".": "./src/index.ts" 8 | }, 9 | "typesVersions": { 10 | "*": { 11 | "*": [ 12 | "src/*" 13 | ] 14 | } 15 | }, 16 | "scripts": { 17 | "build": "tsup", 18 | "clean": "rm -rf dist .turbo node_modules", 19 | "format-and-lint": "biome check .", 20 | "format-and-lint:fix": "biome check . --write", 21 | "typecheck": "tsc --noEmit", 22 | "update": "bun update" 23 | }, 24 | "dependencies": { 25 | "e2b": "1.2.0-beta.5", 26 | "@daytonaio/sdk": "^0.25.6", 27 | "@libra/common": "*" 28 | }, 29 | "devDependencies": { 30 | "@libra/typescript-config": "*", 31 | "tsup": "^8.5.0", 32 | "typescript": "^5.9.2" 33 | } 34 | } -------------------------------------------------------------------------------- /packages/ui/src/components/accordion.tsx: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-License-Identifier: AGPL-3.0-only 3 | * accordion.tsx 4 | * Copyright (C) 2025 Nextify Limited 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Affero General Public License as 8 | * published by the Free Software Foundation, either version 3 of the 9 | * License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Affero General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Affero General Public License 17 | * along with this program. If not, see . 18 | * 19 | */ 20 | 21 | -------------------------------------------------------------------------------- /apps/web/components/ide/libra/github-integration/__tests__/status-card.test.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * Basic component validation tests 3 | */ 4 | 5 | import { describe, expect, it } from 'vitest' 6 | 7 | import { StatusCard } from '../components/status-card' 8 | 9 | describe('StatusCard Component Validation', () => { 10 | it('should export StatusCard component', () => { 11 | expect(StatusCard).toBeDefined() 12 | expect(typeof StatusCard).toBe('function') 13 | }) 14 | 15 | it('should have proper TypeScript types', () => { 16 | // Basic type checking - the component should accept the expected props 17 | const props = { 18 | variant: 'success' as const, 19 | title: 'Test Title', 20 | description: 'Test Description' 21 | } 22 | 23 | // If this compiles without TypeScript errors, the types are correct 24 | expect(props).toBeDefined() 25 | }) 26 | 27 | }) 28 | -------------------------------------------------------------------------------- /apps/vite-shadcn-template/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Libra AI 7 | 8 | 9 |
10 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /packages/better-auth-cloudflare/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @libra/better-auth-cloudflare 2 | 3 | ## 1.0.10 4 | 5 | ### Patch Changes 6 | 7 | - docs bug fix & deps update 8 | 9 | ## 1.0.9 10 | 11 | ### Patch Changes 12 | 13 | - update deps 14 | 15 | ## 1.0.8 16 | 17 | ### Patch Changes 18 | 19 | - bug fix 20 | 21 | ## 1.0.7 22 | 23 | ### Patch Changes 24 | 25 | - update deps 26 | 27 | ## 1.0.6 28 | 29 | ### Patch Changes 30 | 31 | - update deps 32 | 33 | ## 1.0.5 34 | 35 | ### Patch Changes 36 | 37 | - update deps 38 | 39 | ## 1.0.4 40 | 41 | ### Patch Changes 42 | 43 | - update deps 44 | 45 | ## 1.0.3 46 | 47 | ### Patch Changes 48 | 49 | - mini update & fix 50 | 51 | ## 1.0.2 52 | 53 | ### Patch Changes 54 | 55 | - update deps 56 | 57 | ## 1.0.1 58 | 59 | ### Patch Changes 60 | 61 | - deps update 62 | 63 | ## 1.0.0 64 | 65 | ### Major Changes 66 | 67 | - first release major version 68 | -------------------------------------------------------------------------------- /packages/shikicode/src/index.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-License-Identifier: AGPL-3.0-only 3 | * index.ts 4 | * Copyright (C) 2025 Nextify Limited 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU Affero General Public License as 8 | * published by the Free Software Foundation, either version 3 of the 9 | * License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU Affero General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU Affero General Public License 17 | * along with this program. If not, see . 18 | * 19 | */ 20 | 21 | export * from './core' 22 | -------------------------------------------------------------------------------- /apps/builder/src/components/ui/textarea.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | 3 | import { cn } from "@/lib/utils" 4 | 5 | export interface TextareaProps 6 | extends React.TextareaHTMLAttributes {} 7 | 8 | const Textarea = React.forwardRef( 9 | ({ className, ...props }, ref) => { 10 | return ( 11 |