The development server runs on port 3000 as soon as the sandbox is ready.
Copy
Ask AI
// template.ts
import { Template, waitForURL } from 'e2b'
export const template = Template()
.fromBunImage('1.3')
.setWorkdir('/home/user/nextjs-app')
.runCmd(
'bun create next-app --app --ts --tailwind --turbopack --yes --use-bun .'
)
.runCmd('bunx --bun shadcn@latest init -d')
.runCmd('bunx --bun shadcn@latest add --all')
.runCmd(
'mv /home/user/nextjs-app/* /home/user/ && rm -rf /home/user/nextjs-app'
)
.setWorkdir('/home/user')
.setStartCmd('bun --bun run dev --turbo', waitForURL('http://localhost:3000'))
Copy
Ask AI
// build.ts
import { Template, defaultBuildLogger } from 'e2b'
import { template as nextJSTemplate } from './template'
Template.build(nextJSTemplate, {
alias: 'nextjs-app-bun',
cpuCount: 4,
memoryMB: 4096,
onBuildLogs: defaultBuildLogger(),
})