You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A lightweight VS Code extension that auto-loads your database. It provides a beautiful database GUI client experience. It brings [Convention over Configuration](https://en.wikipedia.org/wiki/Convention_over_configuration) into database management.
8
+
9
+
Built with 💖 for developers.
10
+
11
+
## Requirements
12
+
13
+
- VS Code 1.83 or newer
14
+
- A VS Code project that uses any of the [supported databases](#supported-databases)
15
+
16
+
## Quick Start
17
+
18
+
- In a VS Code project using any of the [supported databases](#supported-databases), ensure your database is properly set up and you are able to connect to your database as usual from your normal app code.
19
+
- DevDb [loads your database](#loading-databases). You can view your database by opening the DevDb (usually before the Terminal tab) as shown in the screenshot below, or by using the [shortcut](#keybinding):
> DevDb provides some [Language and Framework Integrations](#language-and-framework-integrations)
26
+
27
+
## Loading databases
28
+
29
+
DevDb can automatically load your database using connection details from your project.
30
+
31
+
### Automatic database loading (zero-config)
32
+
33
+
The following environments are currently supported:
34
+
35
+
1. Laravel with local default SQLite database
36
+
1. Laravel MySQL with default .env config
37
+
1. Containerized Laravel MySQL (Laravel Sail) with config in default .env/docker-compose.yml
38
+
39
+
### Config-base database loading
40
+
41
+
If there is no [zero-config support](#automatic-database-loading-zero-config) for your environment, then simply provide a `.devdbrc` file in the root of your project. DevDb will connect to and load your database using this configuration file.
42
+
43
+
The content of the configuration file should be a single array containing database connection objects as shown below:
44
+
45
+
#### SQLite database configuration file example
46
+
47
+
```
48
+
[
49
+
{
50
+
"type": "sqlite",
51
+
"path": "/home/path/to/database.sqlite"
52
+
}
53
+
]
54
+
```
55
+
56
+
#### MySQL database configuration file example
57
+
58
+
```
59
+
[
60
+
{
61
+
"name": "My test MySQL database", // <-- to identify the connection
62
+
"type": "mysql",
63
+
"host": "<host>",
64
+
"port": "<port>",
65
+
"username": "<username>",
66
+
"password": "<password>",
67
+
"database": "test" // <-- the database to show in VS Code DevDb view
68
+
}
69
+
]
70
+
```
71
+
72
+
You can also have more than one connections in the configuration file, e.g.
73
+
74
+
```
75
+
[
76
+
{
77
+
"name": "My test MySQL database", // <-- to identify the connection
78
+
"type": "mysql",
79
+
"host": "<host>",
80
+
"port": "<port>",
81
+
"username": "<username>",
82
+
"password": "<password>",
83
+
"database": "test" // <-- the database to show in VS Code DevDb view
84
+
},
85
+
{
86
+
"type": "sqlite",
87
+
"path": "/home/path/to/database.sqlite"
88
+
}
89
+
]
90
+
```
91
+
92
+
> [!TIP]
93
+
> You may not want to commit DevDb config file to your version control.
94
+
> This is because other devs in your team may be using different database connection details in their local environments.
95
+
96
+
## Keybinding
97
+
98
+
Press `Ctrl+K Ctrl+D` to bring up DevDb view
99
+
100
+
## Supported Databases
101
+
102
+
The following databases are currently supported:
103
+
104
+
- MySQL
105
+
- SQLite
106
+
107
+
Support for Postgres and MongoDB will likely be added in a future release.
108
+
109
+
## Language and Framework Integrations
110
+
111
+
- Laravel model Code Lens for viewing Eloquent model underlying table
DevDB aims to be a DB GUI client specifically designed for a much better development experience when working with databases.
125
+
DevDb aims to be a DB GUI client specifically designed for a much better development experience when working with databases.
10
126
Specifically, these experiences:
127
+
11
128
1. For any new project, it is usually required to setup db connection in the app project, **and** then in some other DB client.
12
129
2. It is common to frequently tab-in and tab-out of project windows, switching between the IDE and DB client. Sometimes, frequent enough to want to view the DB data directly in the IDE. Think of how you've got your in-built terminal right in the IDE.
13
130
@@ -19,13 +136,8 @@ Furthermore, who doesn't love beautiful UIs? DB clients have evolved to generall
19
136
20
137
To address the above, there is a need for a database GUI tool that lives in the IDE, and mostly auto-detects and connects with the database configured in the currently opened workspace. It should be simple, fast, intuitive, and clean.
21
138
22
-
Hence, DevDB 🚀
23
-
24
-
## Keybinding
25
-
Press `Ctrl+K Ctrl+D` to bring up the view
26
-
27
-
## Configuration
28
-
Do not commit DevDB config file `.devdb.json` to version control.
139
+
Hence, DevDb 🚀
29
140
30
141
## Disclaimer
31
-
DevDB does not aim to provide feature-parity with popular GUI database clients. This extension is focused at improving working with databased during application development.
142
+
143
+
DevDb does not aim to provide feature-parity with popular GUI database clients. This extension is focused on improving the experience of working with databases during application development.
0 commit comments