Overview
Tesslate Studio offers three ways to create a project, each suited to different starting points:Template
Blank React + Vite starter for building from scratch
Git Import
Import from GitHub, GitLab, or Bitbucket
Base
Pre-built template from the Marketplace
Method 1: From Template
The template method gives you a clean React + Vite + TypeScript starter project. This is the best option when you want to start from scratch and let AI agents build out the features.Name Your Project
Enter a descriptive name (for example, “My Landing Page”). Tesslate generates a unique slug automatically, such as
my-landing-page-k3x8n2.Set Project Phase
Choose an organizational label:
- Idea: Planning stage
- Build: Active development
- Launch: Ready for production
What You Get
The template includes a minimal, working React application:- React 18 with TypeScript
- Vite for fast development and Hot Module Replacement (HMR)
- Tailwind CSS pre-configured
- A basic
App.tsxcomponent ready to customize - Development server configured to start automatically
API Details
The frontend sends:task_id. The frontend uses tasksApi.pollUntilComplete(task_id) to wait for setup, then navigates to /project/{slug}/builder.
Method 2: From Git Repository
Import an existing repository from GitHub, GitLab, or Bitbucket. Tesslate clones the repository into a new project container and starts the dev server.Connect Your Provider
If you have not connected a Git provider, click Connect GitHub (or GitLab, or Bitbucket) and complete the OAuth authorization flow.
Select Import Source
In the Create Project dialog, choose GitHub, GitLab, or Bitbucket as your project source.
Choose a Repository
Browse your repositories or search by name. For organizations you belong to, you can filter by organization.
Configure Import
Set the project name and phase. Tesslate auto-detects the branch and framework where possible.
Multi-Provider Support
Tesslate supports three Git providers through a unified API:| Provider | Clone URL Format | OAuth Flow |
|---|---|---|
| GitHub | https://github.com/user/repo | GitHub OAuth App |
| GitLab | https://gitlab.com/user/repo | GitLab OAuth App |
| Bitbucket | https://bitbucket.org/user/repo | Bitbucket OAuth App |
API Details
source_type value changes to "gitlab" or "bitbucket" respectively.
Supported Project Types
- React / Next.js
- Vue / Nuxt
- Other Frameworks
- Backend Frameworks
- Create React App
- Vite + React
- Next.js (all modes)
- React + TypeScript
For non-Node.js projects, adding a
TESSLATE.md file to the repository root helps Tesslate detect the correct startup command and port. Without this file, the platform defaults to npm install && npm run dev on port 3000.Method 3: From Base
Bases are marketplace templates backed by Git repositories. This is the fastest way to start with a fully-configured project that includes a specific tech stack and working features.Install a Base
If you have not already, browse the Marketplace and install the base you want to use. It will appear in your Library.
Choose Your Base
Pick from your installed bases. Each card shows the tech stack, category, and feature list.
API Details
Popular Base Categories
Full-Stack Starters
Full-Stack Starters
- Vite + React + FastAPI: React frontend with Python API backend and PostgreSQL
- Next.js 16: Server-side rendering, API routes, and database integration
- Vite + React + Go: React frontend with a Go API backend
Frontend Starters
Frontend Starters
- React + Tailwind + shadcn/ui
- Vue 3 + Vite
- Svelte + SvelteKit
- Astro for content-heavy sites
Backend and API
Backend and API
- FastAPI with SQLAlchemy and Alembic
- Django with REST framework
- Go with Gin or Fiber
- Rust with Actix Web
Mobile
Mobile
- Expo (React Native) starter
- Flutter cross-platform template
What Happens After Creation
Regardless of which method you use, the same initialization process runs:Background Task Starts
The server creates a background task that sets up the project infrastructure.
Project Directory Created
Files are either generated (template), cloned (Git import), or cloned from the base repository.
Container Configuration Generated
Docker mode: A
docker-compose.yml file is generated with the appropriate image, ports, volumes, and Traefik labels.Kubernetes mode: A namespace is created (proj-{uuid}), along with a PVC for storage, a file-manager deployment, and service/ingress resources.Dev Server Starts
Dependencies are installed (typically
npm install) and the development server launches. The container monitors health via startup probes.Task Polling
The frontend polls the backend to check on the project setup progress:Agent-Assisted Startup
Community bases (external repositories without aTESSLATE.md file) sometimes fail the default startup command. When this happens:
- The health check times out after approximately 120 seconds
- The UI shows a “Container needs setup” message
- An “Ask Agent to start it” button appears
- Clicking the button prefills the chat with: “Use the running tmux process to get this up and running. The port for the preview url is .”
- The AI agent reads the project files, determines the correct startup command, and runs it
This process works because the container stays alive even when the dev server is not running. In Kubernetes mode, startup probes check for a tmux session (not an HTTP response), so the container remains available for the agent to configure.
Troubleshooting
Project Stuck on Initializing
Project Stuck on Initializing
Cause: The background task is still running, or it failed silently.What to try:
- Wait up to 60 seconds (first-time initialization can be slow, especially for large repositories)
- Check your internet connection (Git cloning requires network access)
- Refresh the page and check if the project appears on your Dashboard
- If the project shows up but the container is not running, try starting it manually from the project settings
Git Import Failed
Git Import Failed
Cause: The repository URL is invalid, private without proper credentials, or the provider OAuth token has expired.What to try:
- Verify the repository is accessible (public, or you have been granted access)
- Re-authorize your Git provider connection in Settings
- Confirm the repository contains a valid project (for example, a
package.jsonfor Node.js projects)
Preview Not Loading After Creation
Preview Not Loading After Creation
Cause: The dev server failed to start, or the health check has not completed yet.What to try:
- Wait 30 to 60 seconds for the initial build
- Check the container status in project settings
- If the container status shows “failed,” try restarting it
- For community bases, use the “Ask Agent to start it” feature to let the AI configure the correct startup command
Wrong Port or Startup Command
Wrong Port or Startup Command
Cause: The base or imported project uses a different port or startup command than the default.What to try:
- Add a
TESSLATE.mdfile to the project root specifying the correct port and startup command - Use the agent-assisted startup feature to have the AI detect and run the correct command
- Manually configure the port in the container settings
Best Practices
Choose the Right Source
- Template: When starting from scratch
- Git Import: When you have existing code
- Base: When you want a working starter with a specific tech stack
Name Projects Clearly
Use descriptive names that reflect the application’s purpose. Avoid special characters. The auto-generated slug will be URL-safe.
Add TESSLATE.md
For repositories that use non-standard startup commands or ports, include a
TESSLATE.md file. This ensures reliable automatic startup for you and anyone who forks your project.Plan Before Building
Know your tech stack requirements before choosing a creation method. If you need a full-stack project with a database, pick a base that includes those services rather than adding them manually later.
Next Steps
Code Editor
Start writing and editing code in your new project
Chat Interface
Use AI agents to build features
Live Preview
See your application running in real time
Git Integration
Connect your project to a Git repository