Integrate Daytona in your NextJS app
K Om Senapati

K Om Senapati @k0msenapati

About: Hi, I'm K Om Senapati, a 2nd-year B.Tech CSE student at OUTR, Bhubaneswar, and a Python developer passionate about hackathons, teamwork, and exploring new technologies.

Location:
Bhubaneswar, India
Joined:
Sep 5, 2023

Integrate Daytona in your NextJS app

Publish Date: Dec 5 '24
100 14

Introduction

Daytona is a secure and open-source development environment manager that simplifies your workflow. Imagine starting development on a Next.js app without the usual setup hassle. On average, developers lose 56% of their time setting up environments. Daytona eliminates that wasted time and lets you focus directly on coding.

Daytona - Secure Infrastructure for Running AI-Generated Code

Deploy AI code with confidence using Daytona's lightning-fast infrastructure. 200ms environment creation, stateful operations, and enterprise-grade security. Try now with $100 credit.

favicon daytona.io

Why Use Daytona?

Daytona works with:

  • Any Git platform: GitHub, GitLab, Bitbucket My Skills
  • Any IDE: Vim, VS Code, JetBrains IDEs My Skills
  • Anywhere: Localhost, AWS, Azure, GCP, Digital Ocean My Skills

The biggest advantage?

You get a pre-configured environment ready in seconds. Just run this command:

daytona create <REPO_URL>
Enter fullscreen mode Exit fullscreen mode

That's it! Your environment is ready. Now you can focus on building features 📈 and fixing bugs 🐛.


Using Daytona for Recipe Genie

1️⃣ Install Daytona using this guide.

2️⃣ Configure Daytona

Step 1: Connect Daytona to Your Git Repositories
To manage your code with version control, link Daytona to your Git provider like Github. Run this command in your terminal:

daytona git-providers add
Enter fullscreen mode Exit fullscreen mode

Step 2: Install a Cloud Provider
If you need to create or manage cloud environments (like AWS, Azure, or GCP), install a provider using this command:

daytona provider install
Enter fullscreen mode Exit fullscreen mode

Step 3: Set a Target
A "Target" is where your development environment will run, like Docker (local or remote), AWS, GCP, or others. To choose one, use this command:

daytona target set
Enter fullscreen mode Exit fullscreen mode

Step 4: Choose Your IDE
Daytona can connect to many IDEs like VS Code, IntelliJ, and more. To set your default IDE, run:

daytona ide
Enter fullscreen mode Exit fullscreen mode

3️⃣ Add devcontainer.json to the repository.

Create a .devcontainer/devcontainer.json file.

You can generate one with ai.

Here's the devcontainer.json I used for Recipe Genie:

{
  "name": "Recipe Genie Dev Container",
  "image": "mcr.microsoft.com/devcontainers/javascript-node",
  "forwardPorts": [3000],
  "customizations": {
    "vscode": {
      "settings": {
        "terminal.integrated.defaultProfile.linux": "bash",
        "files.autoSave": "onWindowChange",
        "editor.formatOnSave": true,
        "editor.defaultFormatter": "esbenp.prettier-vscode"
      },
      "extensions": [
        "ms-azuretools.vscode-docker",
        "ms-vscode-remote.remote-containers",
        "dbaeumer.vscode-eslint",
        "esbenp.prettier-vscode",
        "dsznajder.es7-react-js-snippets",
        "formulahendry.auto-rename-tag",
        "bradlc.vscode-tailwindcss",
        "christian-kohler.path-intellisense",
        "ms-vscode.vscode-typescript-next"
      ]
    }
  },
  "postCreateCommand": "npm i"
}
Enter fullscreen mode Exit fullscreen mode

4️⃣ Create your workspace and project

daytona create <REPO_URL>
Enter fullscreen mode Exit fullscreen mode

That's it! Your environment is ready.

To start development, simply run the following:

npm run dev
Enter fullscreen mode Exit fullscreen mode

Some highlights of devcontainer.json file:

  • Pre-configured environment: Uses the javascript-node devcontainer image from Microsoft.
  • Post-setup commands: Automatically runs npm i to install dependencies.
  • VS Code settings: Includes useful VSC settings and extensions for productive development, like Prettier, ESLint, and React/Next.js tools.
  • PORT forwarding: Automatically forwards port 3000 to access the development server from the host machine.

Conclusion

Daytona simplifies development by automating environment setup. Try Daytona today and experience the difference!

If you like this blog, show some love for Recipe Genie and Daytona.

GitHub logo daytonaio / daytona

The Open Source Dev Environment Manager.

Documentation License Go Report Card Issues - daytona GitHub Release

 

Daytona logo

Set up a development environment on any infrastructure using a single command

Daytona Demo

Documentation · Report Bug · Request Feature · Join Our Slack · Connect On X

Open Source Development Environment Manager

For detailed/manual setup steps click here

Mac / Linux

curl -sfL get.daytona.io | sudo bash && daytona server -y && daytona
Enter fullscreen mode Exit fullscreen mode

Windows

powershell -Command "irm https://get.daytona.io/windows | iex; daytona serve"
Enter fullscreen mode Exit fullscreen mode

Create your first dev environment by opening a new terminal, and running:

daytona create
Enter fullscreen mode Exit fullscreen mode

Start coding.


Features

  • Quick Setup: Activate a fully configured development environment with a single command - daytona create.
  • Runs everywhere: Spin up your development environment on any machine; local, remote, cloud-based, physical server or a VM & on any architecture; x86 or ARM.
  • Various Providers Support: Choose popular providers like AWS, GCP, Azure, DigitalOcean & more or use Docker on bare metal.
  • IDE Support : Seamlessly supports…

GitHub logo kom-senapati / Recipe-Genie-Daytona

🧞‍♂️ Ultimate cooking companion powered by TheMealDB for discovering delightful recipes and categories

Sample Recipe Genie

Recipe Genie is your go-to app for exploring delicious recipes, powered by TheMealDB. Discover a variety of dishes, surprise yourself with random recipes, or browse through different categories. With Recipe Genie, enjoy a fun and easy cooking adventure! It's a simple Next.js app built using TheMealDB.


🚀 Getting Started

Open Using Daytona

  1. Install Daytona: Follow the Daytona installation guide.

  2. Create the Workspace:

    daytona create https://github.com/kom-senapati/Recipe-Genie-Daytona.git
    Enter fullscreen mode Exit fullscreen mode
  3. Start the Application:

    npm run dev
    Enter fullscreen mode Exit fullscreen mode

🤔 Why Use DevContainer and Daytona?

DevContainer

  • Simplifies development environment setup in VS Code.
  • Perfect for team collaboration in open-source projects.
  • Eliminates the hassle of creating dev environments for contributors.
  • Automatically configures extensions and settings for a consistent experience.

Daytona

  • Works with any Git platform: GitHub, GitLab, Bitbucket.
  • Compatible with any IDE: Vim, VS Code, JetBrains IDEs.
  • Runs anywhere: Localhost, AWS, Azure, GCP, Digital Ocean.
  • Flexible and efficient…




bye bye

Comments 14 total

Add comment