graphjin 0.17.9 → 0.17.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -11
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,30 +5,36 @@
|
|
|
5
5
|
[](https://github.com/dosco/graphjin/blob/master/LICENSE)
|
|
6
6
|
[](https://hub.docker.com/r/dosco/graphjin/builds)
|
|
7
7
|
[](https://discord.gg/6pSWCTZ)
|
|
8
|
+
|
|
8
9
|
<!-- [](https://deploy.cloud.run)
|
|
9
10
|
-->
|
|
10
|
-
|
|
11
|
+
|
|
11
12
|
GraphJin gives you an instant secure and fast GraphQL API without code. GraphQL is automagically compiled into an efficient SQL query. Use either as a library or a standalone service. Build your backend APIs 100X faster.
|
|
12
13
|
|
|
13
14
|
## 1. Quick install
|
|
15
|
+
|
|
14
16
|
Mac (Homebrew)
|
|
17
|
+
|
|
15
18
|
```
|
|
16
19
|
brew install dosco/graphjin/graphjin
|
|
17
20
|
```
|
|
18
21
|
|
|
19
22
|
Ubuntu (Snap)
|
|
23
|
+
|
|
20
24
|
```
|
|
21
25
|
sudo snap install --classic graphjin
|
|
22
26
|
```
|
|
23
27
|
|
|
24
28
|
Debian and Redhat ([releases](https://github.com/dosco/graphjin/releases))
|
|
29
|
+
|
|
25
30
|
```
|
|
26
31
|
Download the .deb or .rpm from the releases page and install with dpkg -i and rpm -i respectively.
|
|
27
32
|
```
|
|
28
33
|
|
|
29
34
|
Go Install
|
|
35
|
+
|
|
30
36
|
```
|
|
31
|
-
go
|
|
37
|
+
go install github.com/dosco/graphjin@latest
|
|
32
38
|
```
|
|
33
39
|
|
|
34
40
|
## 2. Create a new app
|
|
@@ -43,7 +49,7 @@ docker-compose up
|
|
|
43
49
|
|
|
44
50
|
## Secure out of the box
|
|
45
51
|
|
|
46
|
-
When you use a query in development it's auto-saved in an allow list and only queries from this allow list can be run in production. In production these allowed queries are converted into prepared statments in the database to protect against sql injection, etc. This makes GraphJin very secure and also very fast since no compiling happens in production all queries go directly to the database. GraphJin is built in Go a language designed by Google to be secure and memory safe.
|
|
52
|
+
When you use a query in development it's auto-saved in an allow list and only queries from this allow list can be run in production. In production these allowed queries are converted into prepared statments in the database to protect against sql injection, etc. This makes GraphJin very secure and also very fast since no compiling happens in production all queries go directly to the database. GraphJin is built in Go a language designed by Google to be secure and memory safe.
|
|
47
53
|
|
|
48
54
|
## Built for production
|
|
49
55
|
|
|
@@ -71,7 +77,6 @@ graphjin secrets
|
|
|
71
77
|
graphjin db
|
|
72
78
|
```
|
|
73
79
|
|
|
74
|
-
|
|
75
80
|
## Use in your own code
|
|
76
81
|
|
|
77
82
|
You can use GraphJin as a library within your own code. The [serv](https://pkg.go.dev/github.com/dosco/graphjin/serv) package exposes the entirely GraphJin standlone service as a library while the [core](https://pkg.go.dev/github.com/dosco/graphjin/core) package exposes just the GraphJin compiler. The [Go docs](https://pkg.go.dev/github.com/dosco/graphjin/core#pkg-examples) are filled with examples on how to use GraphJin within your own apps as a sort of alternative to using ORM packages. GraphJin allows you to use GraphQL and the full power of GraphJin to access your data instead of a limiting ORM.
|
|
@@ -133,17 +138,16 @@ import (
|
|
|
133
138
|
|
|
134
139
|
gj, err := serv.NewGraphJinService(conf, opt...)
|
|
135
140
|
if err != nil {
|
|
136
|
-
|
|
141
|
+
return err
|
|
137
142
|
}
|
|
138
143
|
|
|
139
144
|
if err := gj.Start(); err != nil {
|
|
140
|
-
|
|
145
|
+
return err
|
|
141
146
|
}
|
|
142
147
|
```
|
|
143
148
|
|
|
144
149
|

|
|
145
150
|
|
|
146
|
-
|
|
147
151
|
## Support the Project
|
|
148
152
|
|
|
149
153
|
GraphJin is an open source project made possible by the support of awesome backers. It has collectively saved teams 1000's of hours dev. time and allowing them to focus on their product and be 100x more productive. If your team uses it please consider becoming a sponsor.
|
|
@@ -156,7 +160,6 @@ GraphJin is an open source project made possible by the support of awesome backe
|
|
|
156
160
|
<img src="https://user-images.githubusercontent.com/832235/112428182-259def80-8d11-11eb-88b8-ccef9206b535.png" width="100" target="_blank">
|
|
157
161
|
</a>
|
|
158
162
|
</div>
|
|
159
|
-
|
|
160
163
|
|
|
161
164
|
## About GraphJin
|
|
162
165
|
|
|
@@ -174,7 +177,7 @@ This compiler is what sits at the heart of GraphJin, with layers of useful funct
|
|
|
174
177
|
|
|
175
178
|
Lets take for example a simple blog app. You'll probably need the following APIs user management, posts, comments, votes. Each of these areas need apis for listing, creating, updating, deleting. Off the top of my head thats like 12 APIs if not more. This is just for managing things for rendering the blog posts, home page, profile page you probably need many more view apis that fetch a whole bunch of things at the same time. This is a lot and we're still talking something simple like a basic blogging app. All these APIs have to be coded up by someone and then the code maintained, updated, made secure, fast, etc. We are talking weeks to months of work if not more. Also remember your mobile and web developers have to wait around till this is all done.
|
|
176
179
|
|
|
177
|
-
With GraphJin your web and mobile developers can start building instantly. All they have to do is just build the GraphQL queries they need and GraphJin fetches the data. Nothing to maintain no backend API code, its secure, lighting fast and has tons of useful features like subscriptions, rate limiting, etc built-in. With GraphJin your building APIs in minutes not days.
|
|
180
|
+
With GraphJin your web and mobile developers can start building instantly. All they have to do is just build the GraphQL queries they need and GraphJin fetches the data. Nothing to maintain no backend API code, its secure, lighting fast and has tons of useful features like subscriptions, rate limiting, etc built-in. With GraphJin your building APIs in minutes not days.
|
|
178
181
|
|
|
179
182
|
## Features
|
|
180
183
|
|
|
@@ -216,8 +219,6 @@ With GraphJin your web and mobile developers can start building instantly. All t
|
|
|
216
219
|
|
|
217
220
|
[GraphQL Examples](https://pkg.go.dev/github.com/dosco/graphjin/core#pkg-examples)
|
|
218
221
|
|
|
219
|
-
|
|
220
|
-
|
|
221
222
|
## Reach out
|
|
222
223
|
|
|
223
224
|
We're happy to help you leverage GraphJin reach out if you have questions
|