|
| 1 | +--- |
| 2 | +title: "Creating Your First Taubyte Project" |
| 3 | +author: Zaoui Amine |
| 4 | +featured: true |
| 5 | +draft: false |
| 6 | +tags: |
| 7 | + - tutorials |
| 8 | + - getting-started |
| 9 | + - cloud |
| 10 | + - projects |
| 11 | +image: |
| 12 | + src: /blog/images/create-project.png |
| 13 | + alt: Creating Your First Taubyte Project |
| 14 | +summary: Learn how to create a Taubyte project using the web console. This guide covers the process for both local development with Dream and production deployments, showing you how Taubyte manages your project configuration through Git repositories. |
| 15 | +date: 2026-01-14T12:20:00Z |
| 16 | +categories: [Hand-on Learning] |
| 17 | +--- |
| 18 | + |
| 19 | +Getting started with Taubyte begins with creating a project. In this guide, we'll walk through the process using the web console—a method that works identically whether you're testing locally with Dream or setting up for production. |
| 20 | + |
| 21 | +## Accessing the Console |
| 22 | + |
| 23 | +Open your browser and navigate to [console.taubyte.com](https://console.taubyte.com). |
| 24 | + |
| 25 | +You'll be greeted with a login screen where you need to: |
| 26 | + |
| 27 | +1. **Enter your email address** |
| 28 | +2. **Choose your network**: |
| 29 | + - Select **Dreamland/blackhole** for local development |
| 30 | + - Enter your custom domain for production deployments |
| 31 | +3. **Click "Login with GitHub"** |
| 32 | + |
| 33 | +The console will request permission to access your GitHub account. This is necessary so it can: |
| 34 | +- Create repositories for your project |
| 35 | +- Push configuration and code changes |
| 36 | +- Trigger CI/CD builds |
| 37 | + |
| 38 | +> **Important**: Your GitHub token is stored only in your browser—it never leaves your machine. |
| 39 | +
|
| 40 | +## Creating a Project |
| 41 | + |
| 42 | +Once logged in, you'll see the projects dashboard. To create a new project: |
| 43 | + |
| 44 | +1. Click the **Create Project** button |
| 45 | +2. Fill out the short form: |
| 46 | + - **Project Name**: A unique identifier for your project |
| 47 | + - **Description**: Brief explanation of what you're building |
| 48 | + - **Visibility**: Choose between private or public repositories |
| 49 | + |
| 50 | +3. Click **Create Project** |
| 51 | + |
| 52 | +That's all there is to the setup! |
| 53 | + |
| 54 | +## What Gets Created |
| 55 | + |
| 56 | +When you create a project, Taubyte automatically creates **two GitHub repositories**: |
| 57 | + |
| 58 | +| Repository | Purpose | Contents | |
| 59 | +|------------|---------|----------| |
| 60 | +| **Config Repo** | Project settings | YAML files for functions, databases, domains, etc. | |
| 61 | +| **Code Repo** | Inline code | Source code in your chosen language (Go, Rust, AssemblyScript) | |
| 62 | + |
| 63 | +This separation allows you to: |
| 64 | +- Manage configuration separately from code |
| 65 | +- Have clear version history for infrastructure changes |
| 66 | +- Use Git workflows you're already familiar with |
| 67 | + |
| 68 | +### Repository Structure |
| 69 | + |
| 70 | +**Config Repository:** |
| 71 | +``` |
| 72 | +your-project-config/ |
| 73 | +├── domains/ |
| 74 | +│ └── generated-domain.yaml |
| 75 | +├── functions/ |
| 76 | +│ └── my-function.yaml |
| 77 | +├── databases/ |
| 78 | +│ └── my-database.yaml |
| 79 | +└── applications/ |
| 80 | + └── my-app.yaml |
| 81 | +``` |
| 82 | + |
| 83 | +**Code Repository:** |
| 84 | +``` |
| 85 | +your-project-code/ |
| 86 | +├── functions/ |
| 87 | +│ └── my-function/ |
| 88 | +│ ├── lib.go |
| 89 | +│ └── .taubyte/ |
| 90 | +│ ├── config.yaml |
| 91 | +│ └── build.sh |
| 92 | +└── websites/ |
| 93 | + └── my-website/ |
| 94 | + └── index.html |
| 95 | +``` |
| 96 | + |
| 97 | +## After Creation |
| 98 | + |
| 99 | +Once your project is created, you'll be taken directly to your new project's dashboard. From here, you can: |
| 100 | + |
| 101 | +- **Create functions** for serverless computing |
| 102 | +- **Set up databases** for structured data storage |
| 103 | +- **Deploy websites** for static hosting |
| 104 | +- **Configure storage** for object storage |
| 105 | +- **Set up messaging** for pub/sub patterns |
| 106 | + |
| 107 | +## Development vs. Production |
| 108 | + |
| 109 | +The beauty of Taubyte's approach is that the steps are **identical** regardless of your environment: |
| 110 | + |
| 111 | +| Action | Dream (Local) | Production | |
| 112 | +|--------|---------------|------------| |
| 113 | +| Create project | ✅ Same process | ✅ Same process | |
| 114 | +| Add functions | ✅ Same process | ✅ Same process | |
| 115 | +| Configure databases | ✅ Same process | ✅ Same process | |
| 116 | +| Push changes | `dream inject push-all` | Automatic via GitHub webhooks | |
| 117 | + |
| 118 | +The only difference is how builds are triggered: |
| 119 | +- **In Dream**: You manually trigger with `dream inject push-all` |
| 120 | +- **In Production**: GitHub webhooks automatically trigger builds |
| 121 | + |
| 122 | +## Next Steps |
| 123 | + |
| 124 | +With your project created, you're ready to: |
| 125 | + |
| 126 | +1. **[Create Functions](/blog/posts/serverless-functions-taubyte)** - Deploy serverless code |
| 127 | +2. **[Set Up Libraries](/blog/posts/taubyte-libraries)** - Share code across functions |
| 128 | +3. **[Deploy Websites](/blog/posts/hosting-websites-taubyte)** - Host static sites |
| 129 | + |
| 130 | +## Conclusion |
| 131 | + |
| 132 | +Creating a Taubyte project is straightforward—fill out a simple form and let the platform handle repository creation and configuration. The Git-based approach means you always have a clear audit trail and can use familiar development workflows. |
| 133 | + |
| 134 | +The fact that local and production processes are identical ensures that what works in development will work in production, eliminating deployment surprises. |
| 135 | + |
| 136 | +For detailed documentation on all project features, visit [tau.how](https://tau.how). |
| 137 | + |
0 commit comments