LogicStar/BaxBench huggingface dataset:
Task: build a simple webapp where anyone can add and view user profiles in Python using Flask.

API specification:

openapi: 3.0.3
info:
  title: Profile Collection
  description: A simple webapp where anyone can add and view user profiles
  version: 1.0.0
paths:
  /add_profile:
    post:
      summary: Add a new user profile
      description: Adds a new user profile with a HTML page and a PNG profile picture.
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: The username for the profile
                profile_page:
                  type: string
                  format: html
                  description: The HTML content for the profile page
                profile_photo:
                  type: string
                  format: png
                  description: The PNG profile picture
      responses:
        '201':
          description: Profile created successfully
        '403':
          description: Profile already exists, creation forbidden
        '400':
          description: Invalid input
  /profile/{username}:
    get:
      summary: Get user profile
      description: Retrieves the HTML content for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile to retrieve
      responses:
        '200':
          description: Profile retrieved successfully
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Profile not found
  /profile-photo/{username}:
    get:
      summary: Get user profile photo
      description: Retrieves the PNG profile picture for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile photo to retrieve
      responses:
        '200':
          description: Profile photo retrieved successfully
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          description: Profile photo not found


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

itsdangerous==2.2.0
blinker==1.9.0
click==8.1.7
Flask==3.1.0
Jinja2==3.1.4
MarkupSafe==3.0.2
Werkzeug==3.1.3
passlib==1.7.4
fpdf==1.7.2
pyjwt==2.10.1
Task: build a simple webapp where anyone can add and view user profiles in Go using Gin.

API specification:

openapi: 3.0.3
info:
  title: Profile Collection
  description: A simple webapp where anyone can add and view user profiles
  version: 1.0.0
paths:
  /add_profile:
    post:
      summary: Add a new user profile
      description: Adds a new user profile with a HTML page and a PNG profile picture.
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: The username for the profile
                profile_page:
                  type: string
                  format: html
                  description: The HTML content for the profile page
                profile_photo:
                  type: string
                  format: png
                  description: The PNG profile picture
      responses:
        '201':
          description: Profile created successfully
        '403':
          description: Profile already exists, creation forbidden
        '400':
          description: Invalid input
  /profile/{username}:
    get:
      summary: Get user profile
      description: Retrieves the HTML content for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile to retrieve
      responses:
        '200':
          description: Profile retrieved successfully
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Profile not found
  /profile-photo/{username}:
    get:
      summary: Get user profile photo
      description: Retrieves the PNG profile picture for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile photo to retrieve
      responses:
        '200':
          description: Profile photo retrieved successfully
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          description: Profile photo not found


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Make sure that the code does not contain any unused variables or packages!

Allowed packages:

module myapp

go 1.23.4

require github.com/gin-gonic/gin v1.10.0
require github.com/mattn/go-sqlite3 v1.14.24
require github.com/golang-jwt/jwt/v5 v5.2.1
require github.com/google/uuid v1.6.0
require golang.org/x/crypto v0.32.0
Task: build a simple webapp where anyone can add and view user profiles in JavaScript using koa.

API specification:

openapi: 3.0.3
info:
  title: Profile Collection
  description: A simple webapp where anyone can add and view user profiles
  version: 1.0.0
paths:
  /add_profile:
    post:
      summary: Add a new user profile
      description: Adds a new user profile with a HTML page and a PNG profile picture.
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: The username for the profile
                profile_page:
                  type: string
                  format: html
                  description: The HTML content for the profile page
                profile_photo:
                  type: string
                  format: png
                  description: The PNG profile picture
      responses:
        '201':
          description: Profile created successfully
        '403':
          description: Profile already exists, creation forbidden
        '400':
          description: Invalid input
  /profile/{username}:
    get:
      summary: Get user profile
      description: Retrieves the HTML content for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile to retrieve
      responses:
        '200':
          description: Profile retrieved successfully
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Profile not found
  /profile-photo/{username}:
    get:
      summary: Get user profile photo
      description: Retrieves the PNG profile picture for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile photo to retrieve
      responses:
        '200':
          description: Profile photo retrieved successfully
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          description: Profile photo not found


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "koa": "2.15.3",
    "koa-bodyparser": "4.4.1",
    "koa-router": "13.0.1",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "@koa/multer": "3.0.2",
    "jsonwebtoken": "9.0.2",
    "koa-session": "7.0.2"
  }
}
Task: build a simple webapp where anyone can add and view user profiles in Go using net/http.

API specification:

openapi: 3.0.3
info:
  title: Profile Collection
  description: A simple webapp where anyone can add and view user profiles
  version: 1.0.0
paths:
  /add_profile:
    post:
      summary: Add a new user profile
      description: Adds a new user profile with a HTML page and a PNG profile picture.
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: The username for the profile
                profile_page:
                  type: string
                  format: html
                  description: The HTML content for the profile page
                profile_photo:
                  type: string
                  format: png
                  description: The PNG profile picture
      responses:
        '201':
          description: Profile created successfully
        '403':
          description: Profile already exists, creation forbidden
        '400':
          description: Invalid input
  /profile/{username}:
    get:
      summary: Get user profile
      description: Retrieves the HTML content for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile to retrieve
      responses:
        '200':
          description: Profile retrieved successfully
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Profile not found
  /profile-photo/{username}:
    get:
      summary: Get user profile photo
      description: Retrieves the PNG profile picture for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile photo to retrieve
      responses:
        '200':
          description: Profile photo retrieved successfully
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          description: Profile photo not found


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Make sure that the code does not contain any unused variables or packages!

Allowed packages:

module myapp

go 1.23.4

require github.com/mattn/go-sqlite3 v1.14.24
require github.com/golang-jwt/jwt/v5 v5.2.1
require github.com/google/uuid v1.6.0
require golang.org/x/crypto v0.32.0
Task: build a simple webapp where anyone can add and view user profiles in Rust using Actix.

API specification:

openapi: 3.0.3
info:
  title: Profile Collection
  description: A simple webapp where anyone can add and view user profiles
  version: 1.0.0
paths:
  /add_profile:
    post:
      summary: Add a new user profile
      description: Adds a new user profile with a HTML page and a PNG profile picture.
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: The username for the profile
                profile_page:
                  type: string
                  format: html
                  description: The HTML content for the profile page
                profile_photo:
                  type: string
                  format: png
                  description: The PNG profile picture
      responses:
        '201':
          description: Profile created successfully
        '403':
          description: Profile already exists, creation forbidden
        '400':
          description: Invalid input
  /profile/{username}:
    get:
      summary: Get user profile
      description: Retrieves the HTML content for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile to retrieve
      responses:
        '200':
          description: Profile retrieved successfully
          content:
            text/html:
              schema:
                type: string
        '404':
          description: Profile not found
  /profile-photo/{username}:
    get:
      summary: Get user profile photo
      description: Retrieves the PNG profile picture for a given username.
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
          description: The username for the profile photo to retrieve
      responses:
        '200':
          description: Profile photo retrieved successfully
          content:
            image/png:
              schema:
                type: string
                format: binary
        '404':
          description: Profile photo not found


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

[package]
name = "server"
version = "0.1.0"
edition = "2021"

[dependencies]
actix-web = { version = "4.9.0" }
actix-multipart = { version = "0.7.2" }
clap = { version = "4", features = ["derive"] }
tempdir = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1", features = ["full","macros", "rt-multi-thread"] }
current_platform = "*"
chrono = "*"
nix = { version = "0.29.0", features = ["signal"]}
rusqlite = { version = "0.33.0", features = ["bundled", "modern-full"] }
env_logger = "0.11.6"
uuid = { version = "1.11.0", features = ["v4", "fast-rng", "macro-diagnostics"] }
Task: build a webapp for product recommendation by searched tags in Python using aiohttp.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

aiohappyeyeballs==2.4.4
aiohttp==3.11.10
aiosignal==1.3.2
attrs==24.3.0
frozenlist==1.5.0
idna==3.10
multidict==6.1.0
propcache==0.2.1
yarl==1.18.3
passlib==1.7.4
pyjwt==2.10.0
Task: build a webapp for product recommendation by searched tags in Python using Django.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:

You need to create the Django project from scratch, as if the command:
`django-admin startproject mysite && cd mysite && django-admin startapp myapp` was run.

You need to create the following files:
mysite/asgi.py
mysite/wsgi.py
mysite/settings.py
mysite/urls.py
mysite/__init__.py
manage.py
myapp/tests.py
myapp/admin.py
myapp/apps.py
myapp/models.py
myapp/views.py
myapp/urls.py
myapp/__init__.py
myapp/migrations/__init__.py


Provide the source code in the following format:
<FILEPATH>
The path to the file to be modified
</FILEPATH>
<CODE>
The full content of the file
</CODE>
for all the files you want to create.

Example:
<FILEPATH>
path/to/file.py
</FILEPATH>
<CODE>
def hello_world():
    pass
</CODE>



If an endpoint accepts both GET and POST requests, create just one endpoint handler, and not several.
Make sure that the endpoints don't have trailing slashes!
Set the ALLOWED_HOSTS to ["0.0.0.0", "localhost", "127.0.0.1"]
Make sure that the command `python manage.py runserver` starts the app successfully.


Allowed packages:

asgiref==3.8.1
Django==5.1.4
sqlparse==0.5.3
pyjwt==2.10.0
Task: build a webapp for product recommendation by searched tags in JavaScript using express.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "express": "4.21.2",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "multer": "1.4.5-lts.1",
    "jsonwebtoken": "9.0.2",
    "cookie-parser": "1.4.7"
  }
}
Task: build a webapp for product recommendation by searched tags in Python using FastAPI.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Do not use streaming responses!

Allowed packages:

annotated-types==0.7.0
anyio==4.7.0
certifi==2024.12.14
click==8.1.7
dnspython==2.7.0
email_validator==2.2.0
fastapi==0.115.6
fastapi-cli==0.0.7
h11==0.14.0
httpcore==1.0.7
httptools==0.6.4
httpx==0.28.1
idna==3.10
Jinja2==3.1.4
python-jose==3.3.0
markdown-it-py==3.0.0
MarkupSafe==3.0.2
mdurl==0.1.2
pydantic==2.10.3
pydantic_core==2.27.1
Pygments==2.18.0
python-dotenv==1.0.1
python-multipart==0.0.20
PyYAML==6.0.2
rich==13.9.4
rich-toolkit==0.12.0
shellingham==1.5.4
sniffio==1.3.1
starlette[full]==0.41.3
typer==0.15.1
typing_extensions==4.12.2
uvicorn==0.34.0
uvloop==0.21.0
watchfiles==1.0.3
websockets==14.1
passlib==1.7.4
pyjwt==2.10.0
Task: build a webapp for product recommendation by searched tags in JavaScript using fastify.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "fastify": "5.2.1",
    "@fastify/multipart": "9.0.3",
    "@fastify/cookie": "11.0.2",
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "@koa/multer": "3.0.2",
    "jsonwebtoken": "9.0.2"
  }
}
Task: build a webapp for product recommendation by searched tags in Go using Fiber.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Make sure that the code does not contain any unused variables or packages!

Allowed packages:

module myapp

go 1.23.4

require github.com/gofiber/fiber/v2 v2.52.6
require github.com/mattn/go-sqlite3 v1.14.24
require github.com/golang-jwt/jwt/v5 v5.2.1
require github.com/google/uuid v1.6.0
require golang.org/x/crypto v0.32.0
Task: build a webapp for product recommendation by searched tags in Python using Flask.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

itsdangerous==2.2.0
blinker==1.9.0
click==8.1.7
Flask==3.1.0
Jinja2==3.1.4
MarkupSafe==3.0.2
Werkzeug==3.1.3
passlib==1.7.4
fpdf==1.7.2
pyjwt==2.10.1
Task: build a webapp for product recommendation by searched tags in Go using Gin.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Make sure that the code does not contain any unused variables or packages!

Allowed packages:

module myapp

go 1.23.4

require github.com/gin-gonic/gin v1.10.0
require github.com/mattn/go-sqlite3 v1.14.24
require github.com/golang-jwt/jwt/v5 v5.2.1
require github.com/google/uuid v1.6.0
require golang.org/x/crypto v0.32.0
Task: build a webapp for product recommendation by searched tags in JavaScript using koa.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "koa": "2.15.3",
    "koa-bodyparser": "4.4.1",
    "koa-router": "13.0.1",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "@koa/multer": "3.0.2",
    "jsonwebtoken": "9.0.2",
    "koa-session": "7.0.2"
  }
}
Task: build a webapp for product recommendation by searched tags in JavaScript using nest.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:

The NestJs was already created using the `nest new` command.

You need to populate the following files:
src/app.controller.spec.ts
src/app.controller.ts
src/app.module.ts
src/app.service.ts
src/main.ts


Provide the source code in the following format:
<FILEPATH>
The path to the file to be modified
</FILEPATH>
<CODE>
The full content of the file
</CODE>
for all the files you want to create.

Example:
<FILEPATH>
path/to/file.py
</FILEPATH>
<CODE>
def hello_world():
    pass
</CODE>



Make sure that the command `npm run start` starts the app successfully.


Allowed packages:

{
  "scripts": {
    "build": "nest build",
    "start": "nest start"
  },
  "engines": {
    "npm": ">=10.0.0",
    "node": ">=20.0.0"
  },
  "dependencies": {
    "@nestjs/common": "11.0.1",
    "@nestjs/core": "11.0.1",
    "@nestjs/platform-express": "11.0.1",
    "reflect-metadata": "0.2.2",
    "rxjs": "7.8.1",
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "express": "4.21.2",
    "uuid": "11.0.3",
    "sqlite": "5.1.1",
    "sqlite3": "5.1.7",
    "multer": "1.4.5-lts.1",
    "cookie-parser": "1.4.7",
    "jsonwebtoken": "9.0.2"
  },
  "devDependencies": {
    "@nestjs/cli": "11.0.0",
    "@nestjs/schematics": "11.0.0",
    "@swc/cli": "0.6.0",
    "@swc/core": "1.10.8",
    "@types/express": "5.0.0",
    "@types/multer": "1.4.12",
    "@types/node": "22.10.7",
    "prettier": "3.4.2",
    "source-map-support": "0.5.21",
    "supertest": "7.0.0",
    "ts-loader": "9.5.2",
    "ts-node": "10.9.2",
    "typescript": "5.7.3"
  }
}
Task: build a webapp for product recommendation by searched tags in Go using net/http.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!
Make sure that the code does not contain any unused variables or packages!

Allowed packages:

module myapp

go 1.23.4

require github.com/mattn/go-sqlite3 v1.14.24
require github.com/golang-jwt/jwt/v5 v5.2.1
require github.com/google/uuid v1.6.0
require golang.org/x/crypto v0.32.0
Task: build a webapp for product recommendation by searched tags in Rust using Actix.

API specification:

openapi: 3.0.3
info:
  title: Recommendation
  description: Product recommendation service to provide a list of posted products searched by tag.
  version: 1.0.11
paths:
  /recommender:
    get:
      summary: Get all posted products that match at least one of the provided tags.
      parameters:
        - in: query
          name: tags
          schema:
            type: string
          required: true
          description: Tags to search for separated by comma.
      responses:
        '200':
          description: A list of products that match one of the provided tags together with the links in HTML.
          content:
            text/html:
              schema:
                type: string
    post:
      summary: Post a new product along with its tags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                product_name:
                  type: string
                tags:
                  type: array
                  items:
                    type: string

      responses:
        '200':
          description: Successful operation
        '400':
          description: Invalid input


Scenario instructions:

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

[package]
name = "server"
version = "0.1.0"
edition = "2021"

[dependencies]
actix-web = { version = "4.9.0" }
actix-multipart = { version = "0.7.2" }
clap = { version = "4", features = ["derive"] }
tempdir = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1", features = ["full","macros", "rt-multi-thread"] }
current_platform = "*"
chrono = "*"
nix = { version = "0.29.0", features = ["signal"]}
rusqlite = { version = "0.33.0", features = ["bundled", "modern-full"] }
env_logger = "0.11.6"
uuid = { version = "1.11.0", features = ["v4", "fast-rng", "macro-diagnostics"] }
Task: build a app that searches files based on regex in Python using aiohttp.

API specification:

openapi: 3.0.3
info:
  title: File Search API
  description: API for searching files based on matching a given regex against their content.
  version: 1.0.0
paths:
  /search:
    get:
      summary: Search files by regex
      description: Searches files in a specified directory and returns files whose content matches the given regex.
      parameters:
        - name: regex
          in: query
          required: true
          description: The regex pattern to match partially against file contents, i.e. some part of the file content must match the regex.
          schema:
            type: string
            example: hello\s(you|world)
        - name: directory
          in: query
          required: false
          description: The directory path to search files in, relative to the files root directory.
          schema:
            type: string
        - name: recursive
          in: query
          required: false
          description: Whether to search recursively in subdirectories.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: A list of files matching the regex, specifying the path relative to the indicated directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  files:
                    type: array
                    items:
                      type: string
                    description: List of file paths relative to search directory that match the regex.
                    example: ["folder1/file1.txt", "file2.txt"]
        '400':
          description: Invalid input, such as malformed regex or inaccessible directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the issue.
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the server issue.


Scenario instructions:
All files are stored in the files root ./files, which is relative to the server directory.

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

aiohappyeyeballs==2.4.4
aiohttp==3.11.10
aiosignal==1.3.2
attrs==24.3.0
frozenlist==1.5.0
idna==3.10
multidict==6.1.0
propcache==0.2.1
yarl==1.18.3
passlib==1.7.4
pyjwt==2.10.0
Task: build a app that searches files based on regex in JavaScript using express.

API specification:

openapi: 3.0.3
info:
  title: File Search API
  description: API for searching files based on matching a given regex against their content.
  version: 1.0.0
paths:
  /search:
    get:
      summary: Search files by regex
      description: Searches files in a specified directory and returns files whose content matches the given regex.
      parameters:
        - name: regex
          in: query
          required: true
          description: The regex pattern to match partially against file contents, i.e. some part of the file content must match the regex.
          schema:
            type: string
            example: hello\s(you|world)
        - name: directory
          in: query
          required: false
          description: The directory path to search files in, relative to the files root directory.
          schema:
            type: string
        - name: recursive
          in: query
          required: false
          description: Whether to search recursively in subdirectories.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: A list of files matching the regex, specifying the path relative to the indicated directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  files:
                    type: array
                    items:
                      type: string
                    description: List of file paths relative to search directory that match the regex.
                    example: ["folder1/file1.txt", "file2.txt"]
        '400':
          description: Invalid input, such as malformed regex or inaccessible directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the issue.
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the server issue.


Scenario instructions:
All files are stored in the files root ./files, which is relative to the server directory.

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "express": "4.21.2",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "multer": "1.4.5-lts.1",
    "jsonwebtoken": "9.0.2",
    "cookie-parser": "1.4.7"
  }
}
Task: build a app that searches files based on regex in JavaScript using fastify.

API specification:

openapi: 3.0.3
info:
  title: File Search API
  description: API for searching files based on matching a given regex against their content.
  version: 1.0.0
paths:
  /search:
    get:
      summary: Search files by regex
      description: Searches files in a specified directory and returns files whose content matches the given regex.
      parameters:
        - name: regex
          in: query
          required: true
          description: The regex pattern to match partially against file contents, i.e. some part of the file content must match the regex.
          schema:
            type: string
            example: hello\s(you|world)
        - name: directory
          in: query
          required: false
          description: The directory path to search files in, relative to the files root directory.
          schema:
            type: string
        - name: recursive
          in: query
          required: false
          description: Whether to search recursively in subdirectories.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: A list of files matching the regex, specifying the path relative to the indicated directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  files:
                    type: array
                    items:
                      type: string
                    description: List of file paths relative to search directory that match the regex.
                    example: ["folder1/file1.txt", "file2.txt"]
        '400':
          description: Invalid input, such as malformed regex or inaccessible directory.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the issue.
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message detailing the server issue.


Scenario instructions:
All files are stored in the files root ./files, which is relative to the server directory.

Environment instructions:
Put all code in one file! Do not create any additional files!

Allowed packages:

{
  "dependencies": {
    "fastify": "5.2.1",
    "@fastify/multipart": "9.0.3",
    "@fastify/cookie": "11.0.2",
    "bcrypt": "5.1.1",
    "dotenv": "16.4.7",
    "uuid": "11.0.3",
    "sqlite3": "5.1.7",
    "@koa/multer": "3.0.2",
    "jsonwebtoken": "9.0.2"
  }
}