{ "name": "e2b", "version": "0.1.0", "description": "Your own virtual developer. e2b lets you build & deploy specialized AI agents that build software for you based on your instructions", "homepage": "https://e2b.dev", "author": { "name": "FoundryLabs, Inc.", "email": "vasek@e2b.dev", "url": "https://e2b.dev" }, "bugs": "https://github.com/e2b-dev/e2b/issues", "repository": { "type": "git", "url": "https://github.com/e2b-dev/e2b" }, "scripts": { "dev:next": "next dev", "start:next": "next start", "dev": "npx concurrently -p none \"next dev\" \"npm run start:api\" \"npm run start:playground\"", "dev:api-service": "npx concurrently \"npm run start:api\" \"npm run start:playground\"", "build": "next build", "start:api": "cd api-service && cross-env PYTHONUNBUFFERED=1 poetry run uvicorn app:app --reload --host 0.0.0.0 --port 49155", "start:playground": "cd api-service/playground && npm run dev", "install:api-service": "cd api-service && poetry install --with dev --no-root && cd playground && npm install", "install:api-playground": "cd api-service/playground && npm install", "install:all": "npm install && npm run install:api-service && npm run install:api-playground", "start": "docker compose build && (npm run db:reset || true && npm run db:start && docker compose up)", "stop": "docker compose down && npm run db:stop", "lint": "next lint", "lint:fix": "next lint --fix", "db:generate": "prisma generate", "db:pull": "prisma db pull", "supabase:dump": "npx --yes supabase@1.46.5 db dump -f supabase/migrations/1680452567_name.sql", "supabase:generate": "supabase gen types typescript --project-id \"ntjfcwpzsxugrykskdgi\" --schema public > db/supabase.ts", "postinstall": "npm run db:generate", "db:start": "npx --yes supabase start -x imgproxy,storage-api,studio,inbucket,edge-runtime,logflare,postgres-meta,deno-relay,pgadmin-schema-diff,vector,migra", "db:stop": "npx --yes supabase stop", "db:reset": "npx --yes supabase db reset", "generate:api-client": "openapi-typescript api-service/openapi.json --support-array-length --alphabetize --output api-client/api/schema.gen.ts" }, "dependencies": { "@devbookhq/splitter": "^1.4.0", "@prisma/client": "^4.13.0", "@supabase/auth-helpers-nextjs": "^0.5.5", "@supabase/auth-helpers-react": "^0.3.1", "@supabase/supabase-js": "^2.10.0", "@tiptap/core": "^2.0.0-beta.220", "@tiptap/extension-bullet-list": "^2.0.0-beta.220", "@tiptap/extension-code-block": "^2.0.0-beta.220", "@tiptap/extension-list-item": "^2.0.0-beta.220", "@tiptap/extension-ordered-list": "^2.0.0-beta.220", "@tiptap/extension-paragraph": "^2.0.3", "@tiptap/extension-placeholder": "^2.0.0-beta.220", "@tiptap/pm": "^2.0.0-beta.220", "@tiptap/react": "^2.0.0-beta.220", "@tiptap/starter-kit": "^2.0.0-beta.220", "clsx": "^1.2.1", "cross-fetch": "^3.1.5", "fuse.js": "^6.6.2", "http-proxy-middleware": "^3.0.0-beta.1", "human-id": "^4.0.0", "immer": "^9.0.19", "jsonpath-plus": "^7.2.0", "lucide-react": "^0.161.0", "mustache": "^4.2.0", "nanoid": "^4.0.1", "next": "13.2.3", "next-superjson-plugin": "^0.5.6", "openapi-typescript-fetch": "^1.1.3", "prosemirror-markdown": "^1.10.1", "prosemirror-state": "^1.4.2", "prosemirror-view": "^1.30.2", "react": "18.2.0", "react-dom": "18.2.0", "react-markdown": "^8.0.5", "react-textarea-autosize": "^8.4.0", "rpc-websocket-client": "^1.1.4", "sharp": "^0.32.0", "superjson": "^1.12.2", "swr": "^2.0.4", "tippy.js": "^6.3.7", "usehooks-ts": "^2.9.1", "zustand": "^4.3.5" }, "devDependencies": { "@tailwindcss/typography": "^0.5.9", "@types/mustache": "^4.2.2", "@types/node": "^18.14.6", "@types/react": "^18.0.28", "@types/react-dom": "^18.0.11", "autoprefixer": "^10.4.13", "concurrently": "^7.6.0", "cross-env": "^7.0.3", "cssnano": "^6.0.0", "eslint": "^8.35.0", "eslint-config-next": "^13.2.3", "eslint-plugin-tailwindcss": "^3.10.1", "eslint-plugin-unused-imports": "^2.0.0", "openapi-typescript": "^6.2.1", "postcss": "^8.4.21", "postcss-import": "^15.1.0", "prisma": "^4.13.0", "supabase": "^1.46.5", "tailwindcss": "^3.2.7", "typescript": "^4.9.5" } }