Skip to content

MongoDB for VS Code

MongoDB for VS Code lets you easily work with MongoDB directly from your VS Code environment. Using the MongoDB extension, you can:

  • Connect to a MongoDB instance or cluster
  • Navigate your databases and collections
  • Prototype queries and aggregations

You can install the MongoDB extension from inside of VS Code via the VS Code Extension Marketplace. Help us improve the MongoDB for VS Code by posting your ideas and suggestions for improvements.


To report bugs, please use our VSCODE JIRA project.

29 results found

  1. Opening Playground file from other folders out of workspace, with Recents list

    Normally I don't store playground files within my VS Code project folder (which often is a Git repository).
    I could add the files to .gitignore, but it would be much more convenience if the Playgrounds pane has options to open file from another folder, and to open recent files too.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. Add Support for Stable API in the extension

    Include support for running playground against a stable API version.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Reactive document opened by ID for editing

    I really want to be able to open a document by ID so I can fix data created during development, but that would be on page 1000 if browsing.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Enable code block with connection to choose and run icon

    Like python notebooks, it would be very helpful to have code blocks to run and select database. like the image shown

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. Pin Connection to Playground

    I would like to be able to switch across playgrounds that are contextually associated with different connections without having switch connections globally.

    So, I connect one playground with one connection, I open another playground for another connection. When I switch back to the first playground I don't have to click through to the first connection as the playground is still associated with it.

    Likewise, when I switch to the second playground, it's already/still connected to the second connection.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. Improve Performance of Result Display - Stream Results to JSON Display

    It looks like currently the playground results don't appear until the full set is collected from the server. This is extremely slow sometimes depending on the latency to the cluster and document size.
    As soon as you have one document returned in the cursor, you can start showing the data in the results panel write the JSON streaming fashion as each document is deserialized.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. Write playground as TypeScript file

    Feature Request

    It would be nice to write MongoDB playground in Typescript, then we will have design time validation and good suggestions in IDE.

    Detailed Description

    It would be awesome to have types for MongoDB interfaces and the ability to import your own types.

    import {Sale} from './types';
    
    use('mongodbVSCodePlaygroundDB');
    
    const sales: Sale[] = [
      { 'item': 'abc', 'price': 10, 'quantity': 2, 'date': new Date('2014-03-01T08:00:00Z') },
      { 'item': 'jkl', 'price': 20, 'quantity': 1, 'date': new Date('2014-03-01T09:00:00Z') },
      { 'item': 'xyz', 'price': 5, 'quantity': 10, 'date': new Date('2014-03-15T09:00:00Z') },
      { 'item': 'xyz', 'price': 5, 'quantity': 20, 'date': new Date('2014-04-04T11:21:39.736Z') },
      { 'item':
    4 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Separate Terminal Instances for Different Playground Scripts

    Currently, when running multiple scripts, all output is directed to the same terminal.
    This could lead to a lot of confusion and difficulty in tracking the progress of individual scripts, especially when they are running concurrently.

    For example, when running two scripts that both output progress percentages, the output in the terminal looks like this:
    Progress: [====== ] 13.70%
    Progress: [===== ] 11.37%
    Progress: [====== ] 13.71%
    Progress: [===== ] 11.37%

    It's challenging to distinguish which progress percentage corresponds to which script. This issue is exacerbated when more scripts are running simultaneously.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Configurable playground name/path

    Currently, only files ending with .mongodb or .mongodb.js are considered playgrounds. It would be helpful if this was more configurable, perhaps a regex that could be compared against the file path/name so we could consider all files within a folder as playgrounds.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Allow to spin up docker container with playground DB directly from VS Code

    When a docker installation is detected on the system, allow to directly spin up a new mongoDB in docker and connect to it.

    When that option is chosen automatically create a new container with the mongodb:latest docker image, a fixed username (e.g. "dev") and a random 16 chars password
    When the port 27017 is already in use, ask the user which port the container should bind.
    Then add the connection to the connections list, connect immediately and open the connection's tree item first hierarchy so I can start adding a database on the server

    I want to be able to…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Add ability to go from Extended JSON to JS and vice-versa.

    It would be nice to have a way to take an expression in EJSON and convert it to "plain" JS.

    The motivativation is that sometimes we get large blocks of aggregation pipelines already in EJSON, but want to express them as JS code without EJSON, or vice-versa.

    A command / shortcut / refactor method to highlight some text that is in format A and convert to format B would be nice.

    {x: {$ne: {"$objectid": "AAAAAAAABBBBBBBBCCCCCCCC"}}}
    
    -------------^^^^^^^^^^^^^^^^^^ "Convert From EJSON..."
    {x: {$ne: ObjectId("AAAAAAAABBBBBBBBCCCCCCCC") }}
    
    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Print Logs As They Happen, Not At End of Script

    Hi,

    When I add a print line in mongosh, that line is executed as it is reached. For example, if I add it within a loop, it prints for every iteration in a loop. However, in a VS Code Playground, it only prints when the Playground has finished executing.

    I'd like to request that the VS Code extension allows for print troubleshooting anywhere within a Playground as it is executed, not just at the end.

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Display the time it took for queries

    Similar to any other MongoDB tool, I would like to know how much it took me to run the specific query/count and so on.
    It would be nice to also have a timer that indicate how much time it been running for (when the query taking too much time).

    4 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. ability to run to a specified aggregation stage and see output

    Essentially the same as https://mongoplayground.net/

    if you add multiple aggregation stages you can pick which one you want to run up to, and inspect the output.

    This makes it dramatically easier to tweak larger pipelines without having to comment further stages out.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  15. Query delimiter lines in playgrounds

    Much like the REST Client extension allows you to add delimiters (in their case three or more #) between requests, it would be good if this extension offered something similar so that you can easily run individual queries or sets of queries in files containing multiple. So my playground looked something like below, clicking the play button when the mouse cursor is above the delimiter executes the first statement and when below the second.

    use('db1')
    db.collection1.find({})

    //////

    use('db2')
    db.collection2.find({})

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. Reuse db connection

    It's much slower than other mongodb clients like Robo 3t every time I run a query, it seems that it create a new connection to the database and then executes the query. Is there any way to keep and reuse an existed connection so that to speed up the query executions?

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. Change Object ID display format from '{$oid: 'xxxx'}' to ObjectId('xxxxx')

    It just uses only 1 line instead 3 lines. And we can copy it directly.

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. Add ObjectId() to intellisense

    Add ObjectId() to .mongodb intellisense / autocomplete when indicating that an _id field is of ObjectId type

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. Intellisense for playground code

    Hovering over getCollection and other supported methods doesn't show any intellisense. This would save us time from having to go to the docs and looking that method up. Also the sort method which I think its a normal JavaScript method doesn't show intellisense inside playground so please add some intellisense.

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. Connection based "theming"

    Add the ability to color code playground tab and/or editor's background color in the playground based on the connection that is active.

    Eg: default background for my localhost connection and a more colorful one for staging environment or production ones even.

    3 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Playground  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
← Previous 1
  • Don't see your idea?

MongoDB for VS Code

Categories

Feedback and Knowledge Base