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
{{ message }}
This repository was archived by the owner on May 2, 2023. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,6 +12,8 @@ It consists of -
12
12
13
13
It is comparable to other libraries such as SQLAlchemy or PyPika, in terms of API and intended audience. However there are several notable ways in which it is different.
14
14
15
+
## Overview
16
+
15
17
### Built for performance
16
18
17
19
- Multi-threaded by default -
@@ -31,11 +33,13 @@ This feature can be also used to inform the query-builder, either as an alternat
31
33
32
34
The schema is used for validation when building expressions, making sure the names are correct, and that the data-types align.
33
35
36
+
(Still WIP)
37
+
34
38
### Multi-database access
35
39
36
40
Sqeleton is designed to work with several databases at the same time. Its API abstracts away as many implementation details as possible.
37
41
38
-
Databases we support:
42
+
Databases we fully support:
39
43
40
44
- PostgreSQL >=10
41
45
- MySQL
@@ -51,11 +55,28 @@ Databases we support:
51
55
- DuckDB >=0.6
52
56
- SQLite (coming soon)
53
57
54
-
55
-
### Documentation
58
+
## Documentation
56
59
57
60
[Read the docs!](https://sqeleton.readthedocs.io)
58
61
62
+
Or jump straight to the [introduction](https://sqeleton.readthedocs.io/en/latest/intro.html).
63
+
64
+
### Install
65
+
66
+
Install using pip:
67
+
68
+
```bash
69
+
pip install sqeleton
70
+
```
71
+
72
+
It is recommended to install the driver dependencies using pip's `[]` syntax:
73
+
74
+
```bash
75
+
pip install 'sqeleton[mysql, postgresql]'
76
+
```
77
+
78
+
Read more in [install / getting started.](https://sqeleton.readthedocs.io/en/latest/install.html)
A common complaint among new users was the difficulty in setting up the connections.
4
+
5
+
Connection URLs are admittedly confusing, and editing `.toml` files isn't always straight-forward either.
6
+
7
+
To ease this initial difficulty, we added a `textual`-based TUI tool to sqeleton, that allows users to edit configuration files and test the connections while editing them.
8
+
9
+
## Install
10
+
11
+
This tool needs `textual` to run. You can install it using:
12
+
13
+
```bash
14
+
pip install 'sqeleton[tui]'
15
+
```
16
+
17
+
Make sure you also have drivers for whatever database connection you're going to edit!
18
+
19
+
## Run
20
+
21
+
Once everything is installed, you can run the editor with the following command:
22
+
23
+
```bash
24
+
sqeleton conn-editor <conf_path.toml>
25
+
```
26
+
27
+
Example:
28
+
29
+
```bash
30
+
sqeleton conn-editor ~/dbs.toml
31
+
```
32
+
33
+
The available actions and hotkeys will be listed in the status bar.
34
+
35
+
Note: using the connection editor will delete comments and reformat the file!
36
+
37
+
We recommend backing up the configuration file before editing it.
Each database is already aware of the available mixin implementation, because it was defined with the `MIXINS` attribute. We're only using the abstract mixins to select the mixins we want to use.
448
+
Each database is already aware of the available mixin implementations, because it was defined with the `MIXINS` attribute. We're only using the abstract mixins to select the mixins we want to use.
449
449
450
450
#### List of mixins
451
451
@@ -463,6 +463,10 @@ List of available abstract mixins:
463
463
464
464
-`AbstractMixin_TimeTravel` - Only snowflake & bigquery
465
465
466
+
More will be added in the future.
467
+
468
+
Note that it's still possible to use user-defined mixins that aren't on this list.
469
+
466
470
#### Unimplemented Mixins
467
471
468
472
Trying to load a mixin that isn't implemented by all databases, will fail:
0 commit comments