chore: minor fixes and improvements
This commit is contained in:
141
README.md
141
README.md
@@ -36,7 +36,7 @@
|
|||||||
<p>
|
<p>
|
||||||
<a href="https://hoppscotch.io">
|
<a href="https://hoppscotch.io">
|
||||||
<img
|
<img
|
||||||
src="https://raw.githubusercontent.com/hoppscotch/hoppscotch/main/static/images/screenshots/banner_dark.png"
|
src="https://raw.githubusercontent.com/hoppscotch/hoppscotch/main/static/images/screenshots/light_rest.png"
|
||||||
alt="Screenshot"
|
alt="Screenshot"
|
||||||
width="100%"
|
width="100%"
|
||||||
/>
|
/>
|
||||||
@@ -78,34 +78,34 @@
|
|||||||
|
|
||||||
**HTTP Methods**
|
**HTTP Methods**
|
||||||
|
|
||||||
- [x] `GET` - Requests retrieve resource information
|
- `GET` - Requests retrieve resource information
|
||||||
- [x] `POST` - The server creates a new entry in a database
|
- `POST` - The server creates a new entry in a database
|
||||||
- [x] `PUT` - Updates an existing resource
|
- `PUT` - Updates an existing resource
|
||||||
- [x] `PATCH` - Very similar to `PUT` but makes a partial update on a resource
|
- `PATCH` - Very similar to `PUT` but makes a partial update on a resource
|
||||||
- [x] `DELETE` - Deletes resource or related component
|
- `DELETE` - Deletes resource or related component
|
||||||
- [x] `HEAD` - Retrieve response headers identical to those of a GET request, but without the response body.
|
- `HEAD` - Retrieve response headers identical to those of a GET request, but without the response body.
|
||||||
- [x] `CONNECT` - Establishes a tunnel to the server identified by the target resource
|
- `CONNECT` - Establishes a tunnel to the server identified by the target resource
|
||||||
- [x] `OPTIONS` - Describe the communication options for the target resource
|
- `OPTIONS` - Describe the communication options for the target resource
|
||||||
- [x] `TRACE` - Performs a message loop-back test along the path to the target resource
|
- `TRACE` - Performs a message loop-back test along the path to the target resource
|
||||||
- [x] `<custom>` - Some APIs use custom request methods such as `LIST`. Type in your custom methods.
|
- `<custom>` - Some APIs use custom request methods such as `LIST`. Type in your custom methods.
|
||||||
|
|
||||||
🌈 **Make it yours:** Customizable combinations for background, foreground and accent colors — [customize now ✨](https://hoppscotch.io/settings).
|
🌈 **Make it yours:** Customizable combinations for background, foreground and accent colors — [customize now ✨](https://hoppscotch.io/settings).
|
||||||
|
|
||||||
**Theming**
|
**Theming**
|
||||||
|
|
||||||
- [x] Choose theme: System (default), Light, Dark and Black
|
- Choose theme: System (default), Light, Dark and Black
|
||||||
- [x] Choose accent color: Green (default), Teal, Blue, Indigo, Purple, Yellow, Orange, Red and Pink
|
- Choose accent color: Green (default), Teal, Blue, Indigo, Purple, Yellow, Orange, Red and Pink
|
||||||
- [x] Distraction free Zen mode
|
- Distraction free Zen mode
|
||||||
|
|
||||||
_Customized themes are synced with cloud / local session_
|
_Customized themes are synced with cloud / local session_
|
||||||
|
|
||||||
🔥 **PWA:** Install as a [PWA](https://developers.google.com/web/progressive-web-apps) on your device.
|
🔥 **PWA:** Install as a [PWA](https://developers.google.com/web/progressive-web-apps) on your device.
|
||||||
|
|
||||||
- [x] Instant loading with Service Workers
|
- Instant loading with Service Workers
|
||||||
- [x] Offline support
|
- Offline support
|
||||||
- [x] Low RAM/memory and CPU usage
|
- Low RAM/memory and CPU usage
|
||||||
- [x] Add to Home Screen
|
- Add to Home Screen
|
||||||
- [x] Desktop PWA
|
- Desktop PWA
|
||||||
|
|
||||||
🚀 **Request:** Retrieve response from endpoint instantly.
|
🚀 **Request:** Retrieve response from endpoint instantly.
|
||||||
|
|
||||||
@@ -113,10 +113,10 @@ _Customized themes are synced with cloud / local session_
|
|||||||
2. Enter `URL`
|
2. Enter `URL`
|
||||||
3. Send
|
3. Send
|
||||||
|
|
||||||
- [x] Copy/share public "Share URL"
|
- Copy/share public "Share URL"
|
||||||
- [x] Generate/copy request code snippets for 10+ languages and frameworks
|
- Generate/copy request code snippets for 10+ languages and frameworks
|
||||||
- [x] Import `cURL`
|
- Import `cURL`
|
||||||
- [x] Label requests
|
- Label requests
|
||||||
|
|
||||||
🔌 **WebSocket:** Establish full-duplex communication channels over a single TCP connection.
|
🔌 **WebSocket:** Establish full-duplex communication channels over a single TCP connection.
|
||||||
|
|
||||||
@@ -128,19 +128,19 @@ _Customized themes are synced with cloud / local session_
|
|||||||
|
|
||||||
🔮 **GraphQL:** GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.
|
🔮 **GraphQL:** GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.
|
||||||
|
|
||||||
- [x] Set endpoint and get schema
|
- Set endpoint and get schema
|
||||||
- [x] Multi-column docs
|
- Multi-column docs
|
||||||
- [x] Set custom request headers
|
- Set custom request headers
|
||||||
- [x] Query schema
|
- Query schema
|
||||||
- [x] Get query response
|
- Get query response
|
||||||
|
|
||||||
🔐 **Authorization:** Allows to identify the end user.
|
🔐 **Authorization:** Allows to identify the end user.
|
||||||
|
|
||||||
- [x] None
|
- None
|
||||||
- [x] Basic
|
- Basic
|
||||||
- [x] Bearer Token
|
- Bearer Token
|
||||||
- [x] OAuth 2.0
|
- OAuth 2.0
|
||||||
- [x] OIDC Access Token/PKCE
|
- OIDC Access Token/PKCE
|
||||||
|
|
||||||
📢 **Headers:** Describes the format the body of your request is being sent as.
|
📢 **Headers:** Describes the format the body of your request is being sent as.
|
||||||
|
|
||||||
@@ -148,42 +148,42 @@ _Customized themes are synced with cloud / local session_
|
|||||||
|
|
||||||
📃 **Request Body:** Used to send and receive data via the REST API.
|
📃 **Request Body:** Used to send and receive data via the REST API.
|
||||||
|
|
||||||
- [x] Set `Content Type`
|
- Set `Content Type`
|
||||||
- [x] FormData, JSON and many more
|
- FormData, JSON and many more
|
||||||
- [x] Toggle between key-value and RAW input parameter list
|
- Toggle between key-value and RAW input parameter list
|
||||||
|
|
||||||
👋 **Response:** Contains the status line, headers and the message/response body.
|
👋 **Response:** Contains the status line, headers and the message/response body.
|
||||||
|
|
||||||
- [x] Copy response to clipboard
|
- Copy response to clipboard
|
||||||
- [x] Download response as a file
|
- Download response as a file
|
||||||
- [x] View response headers
|
- View response headers
|
||||||
- [x] View raw and preview of HTML, image, JSON, XML responses
|
- View raw and preview of HTML, image, JSON, XML responses
|
||||||
|
|
||||||
⏰ **History:** Request entries are synced with cloud / local session storage to restore with a single click.
|
⏰ **History:** Request entries are synced with cloud / local session storage to restore with a single click.
|
||||||
|
|
||||||
📁 **Collections:** Keep your API requests organized with collections and folders. Reuse them with a single click.
|
📁 **Collections:** Keep your API requests organized with collections and folders. Reuse them with a single click.
|
||||||
|
|
||||||
- [x] Unlimited collections, folders and requests
|
- Unlimited collections, folders and requests
|
||||||
- [x] Nested folders
|
- Nested folders
|
||||||
- [x] Export and import as file or GitHub gist
|
- Export and import as file or GitHub gist
|
||||||
|
|
||||||
_Collections are synced with cloud / local session storage_
|
_Collections are synced with cloud / local session storage_
|
||||||
|
|
||||||
🌐 **Proxy:** Enable Proxy Mode from Settings to access blocked APIs.
|
🌐 **Proxy:** Enable Proxy Mode from Settings to access blocked APIs.
|
||||||
|
|
||||||
- [x] Hide your IP address
|
- Hide your IP address
|
||||||
- [x] Fixes [`CORS`](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) (Cross Origin Resource Sharing) issues
|
- Fixes [`CORS`](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) (Cross Origin Resource Sharing) issues
|
||||||
- [x] Access APIs served in non-HTTPS `[http://]` endpoints
|
- Access APIs served in non-HTTPS `[http://]` endpoints
|
||||||
- [x] Use your own Proxy URL
|
- Use your own Proxy URL
|
||||||
|
|
||||||
_Official proxy server is hosted by Hoppscotch - **[GitHub](https://github.com/hoppscotch/proxyscotch)** - **[Privacy Policy](https://docs.hoppscotch.io/privacy)**_
|
_Official proxy server is hosted by Hoppscotch - **[GitHub](https://github.com/hoppscotch/proxyscotch)** - **[Privacy Policy](https://docs.hoppscotch.io/privacy)**_
|
||||||
|
|
||||||
📜 **Pre-Request Scripts β:** Snippets of code associated with a request that are executed before the request is sent.
|
📜 **Pre-Request Scripts β:** Snippets of code associated with a request that are executed before the request is sent.
|
||||||
|
|
||||||
- [x] Set environment variables
|
- Set environment variables
|
||||||
- [x] Include timestamp in the request headers
|
- Include timestamp in the request headers
|
||||||
- [x] Send a random alphanumeric string in the URL parameters
|
- Send a random alphanumeric string in the URL parameters
|
||||||
- [x] Any JavaScript functions
|
- Any JavaScript functions
|
||||||
|
|
||||||
📄 **API Documentation:** Create and share dynamic API documentation easily, quickly.
|
📄 **API Documentation:** Create and share dynamic API documentation easily, quickly.
|
||||||
|
|
||||||
@@ -193,7 +193,7 @@ _Official proxy server is hosted by Hoppscotch - **[GitHub](https://github.com/h
|
|||||||
|
|
||||||
⌨️ **Keyboard Shortcuts:** Optimized for efficiency.
|
⌨️ **Keyboard Shortcuts:** Optimized for efficiency.
|
||||||
|
|
||||||
> **[Shortcuts](https://docs.hoppscotch.io/features/shortcuts)**
|
> **[Read our documentation on Keyboard Shortcuts](https://docs.hoppscotch.io/features/shortcuts)**
|
||||||
|
|
||||||
🌎 **i18n:** Experience the app in your own language.
|
🌎 **i18n:** Experience the app in your own language.
|
||||||
|
|
||||||
@@ -215,29 +215,29 @@ _Add-ons are developed and maintained under **[Hoppscotch Organization](https://
|
|||||||
|
|
||||||
**Sign in with**
|
**Sign in with**
|
||||||
|
|
||||||
- [x] GitHub
|
- GitHub
|
||||||
- [x] Google
|
- Google
|
||||||
- [x] Email
|
- Email
|
||||||
|
|
||||||
**Synchronize your data**
|
**Synchronize your data**
|
||||||
|
|
||||||
- [x] History
|
- History
|
||||||
- [x] Collections
|
- Collections
|
||||||
- [x] Environments
|
- Environments
|
||||||
- [x] Settings
|
- Settings
|
||||||
|
|
||||||
✅ **Post-Request Tests β:** Write tests associated with a request that are executed after the request response.
|
✅ **Post-Request Tests β:** Write tests associated with a request that are executed after the request response.
|
||||||
|
|
||||||
- [x] Check the status code as an integer
|
- Check the status code as an integer
|
||||||
- [x] Filter response headers
|
- Filter response headers
|
||||||
- [x] Parse the response data
|
- Parse the response data
|
||||||
- [x] Any JavaScript functions
|
- Any JavaScript functions
|
||||||
|
|
||||||
🌱 **Environments** : Environment variables allow you to store and reuse values in your requests and scripts.
|
🌱 **Environments** : Environment variables allow you to store and reuse values in your requests and scripts.
|
||||||
|
|
||||||
- [x] Unlimited environments and variables
|
- Unlimited environments and variables
|
||||||
- [x] Initialize through pre-request script
|
- Initialize through pre-request script
|
||||||
- [x] Export as / import from GitHub gist
|
- Export as / import from GitHub gist
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><i>Use-cases</i></summary>
|
<summary><i>Use-cases</i></summary>
|
||||||
@@ -254,9 +254,9 @@ _Add-ons are developed and maintained under **[Hoppscotch Organization](https://
|
|||||||
|
|
||||||
👨👩👧👦 **Teams β:** Helps you collaborate across your team to design, develop, and test APIs faster.
|
👨👩👧👦 **Teams β:** Helps you collaborate across your team to design, develop, and test APIs faster.
|
||||||
|
|
||||||
- [x] Unlimited team collections and shared requests
|
- Unlimited team collections and shared requests
|
||||||
- [x] Unlimited team members
|
- Unlimited team members
|
||||||
- [x] User roles
|
- User roles
|
||||||
|
|
||||||
**For more features, please read our [documentation](https://docs.hoppscotch.io).**
|
**For more features, please read our [documentation](https://docs.hoppscotch.io).**
|
||||||
|
|
||||||
@@ -288,7 +288,8 @@ _Sample keys only works with the [production build](https://hoppscotch.io)._
|
|||||||
|
|
||||||
### Browser based development environment
|
### Browser based development environment
|
||||||
|
|
||||||
[](https://gitpod.io/#https://github.com/hoppscotch/hoppscotch)
|
- [GitHub codespace](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace)
|
||||||
|
- [Gitpod](https://gitpod.io/#https://github.com/hoppscotch/hoppscotch)
|
||||||
|
|
||||||
### Local development environment
|
### Local development environment
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
<div v-if="navigation.svg" class="h-4 w-4">
|
<div v-if="navigation.svg" class="h-4 w-4">
|
||||||
<SmartIcon :name="navigation.svg" class="svg-icons" />
|
<SmartIcon :name="navigation.svg" class="svg-icons" />
|
||||||
</div>
|
</div>
|
||||||
<span>{{ navigation.title }}</span>
|
<span v-if="LEFT_SIDEBAR">{{ navigation.title }}</span>
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
</nav>
|
</nav>
|
||||||
<!-- <nav
|
<!-- <nav
|
||||||
@@ -57,10 +57,11 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from "@nuxtjs/composition-api"
|
import { defineComponent } from "@nuxtjs/composition-api"
|
||||||
|
import { useSetting } from "~/newstore/settings"
|
||||||
// import { defineActionHandler } from "~/helpers/actions"
|
// import { defineActionHandler } from "~/helpers/actions"
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
// setup() {
|
setup() {
|
||||||
// const showSearch = ref(false)
|
// const showSearch = ref(false)
|
||||||
// const showSupport = ref(false)
|
// const showSupport = ref(false)
|
||||||
// const showShare = ref(false)
|
// const showShare = ref(false)
|
||||||
@@ -77,12 +78,13 @@ export default defineComponent({
|
|||||||
// showShare.value = !showShare.value
|
// showShare.value = !showShare.value
|
||||||
// })
|
// })
|
||||||
|
|
||||||
// return {
|
return {
|
||||||
// showSearch,
|
// showSearch,
|
||||||
// showSupport,
|
// showSupport,
|
||||||
// showShare,
|
// showShare,
|
||||||
// }
|
LEFT_SIDEBAR: useSetting("LEFT_SIDEBAR"),
|
||||||
// },
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
primaryNavigation: [
|
primaryNavigation: [
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
flex flex-col
|
flex flex-col
|
||||||
h-full
|
h-full
|
||||||
max-w-full
|
max-w-full
|
||||||
shadow-xl
|
|
||||||
transform
|
transform
|
||||||
transition
|
transition
|
||||||
top-0
|
top-0
|
||||||
@@ -27,7 +26,7 @@
|
|||||||
fixed
|
fixed
|
||||||
overflow-auto
|
overflow-auto
|
||||||
"
|
"
|
||||||
:class="show ? 'translate-x-0' : 'translate-x-full'"
|
:class="show ? 'shadow-xl translate-x-0' : 'translate-x-full'"
|
||||||
>
|
>
|
||||||
<slot name="content"></slot>
|
<slot name="content"></slot>
|
||||||
</aside>
|
</aside>
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
icon="assignment_turned_in"
|
icon="assignment_turned_in"
|
||||||
:label="$t('export.create_secret_gist')"
|
:label="$t('export.create_secret_gist')"
|
||||||
@click.native="
|
@click.native="
|
||||||
createCollectionGist
|
createCollectionGist()
|
||||||
$refs.options.tippy().hide()
|
$refs.options.tippy().hide()
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -44,7 +44,7 @@
|
|||||||
icon="assignment_turned_in"
|
icon="assignment_turned_in"
|
||||||
:label="$t('export.create_secret_gist')"
|
:label="$t('export.create_secret_gist')"
|
||||||
@click.native="
|
@click.native="
|
||||||
createCollectionGist
|
createCollectionGist()
|
||||||
$refs.options.tippy().hide()
|
$refs.options.tippy().hide()
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
<div class="flex flex-col mt-16 items-center justify-center">
|
<div class="flex flex-col mt-16 items-center justify-center">
|
||||||
<h2
|
<h2
|
||||||
class="
|
class="
|
||||||
|
font-bold
|
||||||
text-accent text-center
|
text-accent text-center
|
||||||
leading-none
|
leading-none
|
||||||
tracking-tighter
|
tracking-tighter
|
||||||
@@ -15,6 +16,7 @@
|
|||||||
</h2>
|
</h2>
|
||||||
<h3
|
<h3
|
||||||
class="
|
class="
|
||||||
|
font-extrabold
|
||||||
my-4
|
my-4
|
||||||
text-center text-secondaryDark
|
text-center text-secondaryDark
|
||||||
leading-none
|
leading-none
|
||||||
@@ -35,7 +37,6 @@
|
|||||||
<ButtonPrimary
|
<ButtonPrimary
|
||||||
label="Get Started"
|
label="Get Started"
|
||||||
icon="arrow_forward"
|
icon="arrow_forward"
|
||||||
rounded
|
|
||||||
reverse
|
reverse
|
||||||
large
|
large
|
||||||
@click.native="showLogin = true"
|
@click.native="showLogin = true"
|
||||||
@@ -43,17 +44,17 @@
|
|||||||
<ButtonSecondary
|
<ButtonSecondary
|
||||||
to="https://github.com/hoppscotch/hoppscotch"
|
to="https://github.com/hoppscotch/hoppscotch"
|
||||||
blank
|
blank
|
||||||
|
filled
|
||||||
outline
|
outline
|
||||||
label="GitHub"
|
label="GitHub"
|
||||||
svg="github"
|
svg="github"
|
||||||
large
|
large
|
||||||
rounded
|
|
||||||
:shortcut="['30k Stars']"
|
:shortcut="['30k Stars']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- <LandingStats /> -->
|
<LandingStats />
|
||||||
|
<LandingScreenshot />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex flex-col items-center justify-center"></div>
|
|
||||||
<FirebaseLogin :show="showLogin" @hide-modal="showLogin = false" />
|
<FirebaseLogin :show="showLogin" @hide-modal="showLogin = false" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
19
components/landing/Screenshot.vue
Normal file
19
components/landing/Screenshot.vue
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<template>
|
||||||
|
<div
|
||||||
|
class="
|
||||||
|
bg-gradient-to-r
|
||||||
|
from-gradientFrom
|
||||||
|
via-gradientVia
|
||||||
|
to-gradientTo
|
||||||
|
flex flex-col
|
||||||
|
items-center
|
||||||
|
justify-center
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<img
|
||||||
|
src="images/screenshots/light_rest.png"
|
||||||
|
alt="Screenshot"
|
||||||
|
class="rounded-lg ring-dividerLight mt-8 max-w-5/6 ring-4"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
5
components/smart/LoadingIndicator.vue
Normal file
5
components/smart/LoadingIndicator.vue
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template>
|
||||||
|
<div class="text-sm text-secondaryLight animate-pulse">
|
||||||
|
<AppLogo class="h-8 w-8" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
@@ -11,7 +11,6 @@
|
|||||||
:horizontal="!(windowInnerWidth >= 768)"
|
:horizontal="!(windowInnerWidth >= 768)"
|
||||||
>
|
>
|
||||||
<Pane
|
<Pane
|
||||||
v-if="LEFT_SIDEBAR"
|
|
||||||
style="width: auto; height: auto"
|
style="width: auto; height: auto"
|
||||||
class="hide-scrollbar !overflow-auto"
|
class="hide-scrollbar !overflow-auto"
|
||||||
>
|
>
|
||||||
@@ -120,7 +119,6 @@ export default defineComponent({
|
|||||||
updateThemes()
|
updateThemes()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
LEFT_SIDEBAR: useSetting("LEFT_SIDEBAR"),
|
|
||||||
ZEN_MODE: useSetting("ZEN_MODE"),
|
ZEN_MODE: useSetting("ZEN_MODE"),
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -204,7 +204,7 @@
|
|||||||
"hide": {
|
"hide": {
|
||||||
"more": "Hide more",
|
"more": "Hide more",
|
||||||
"preview": "Hide Preview",
|
"preview": "Hide Preview",
|
||||||
"sidebar": "Hide sidebar"
|
"sidebar": "Collapse sidebar"
|
||||||
},
|
},
|
||||||
"import": {
|
"import": {
|
||||||
"collections": "Import collections",
|
"collections": "Import collections",
|
||||||
@@ -386,7 +386,7 @@
|
|||||||
"show": {
|
"show": {
|
||||||
"code": "Show code",
|
"code": "Show code",
|
||||||
"more": "Show more",
|
"more": "Show more",
|
||||||
"sidebar": "Show sidebar"
|
"sidebar": "Expand sidebar"
|
||||||
},
|
},
|
||||||
"socketio": {
|
"socketio": {
|
||||||
"communication": "Communication",
|
"communication": "Communication",
|
||||||
|
|||||||
@@ -1,11 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex flex-col min-h-screen items-center justify-center">
|
<div class="flex flex-col min-h-screen items-center justify-center">
|
||||||
<div v-if="signingInWithEmail">
|
<SmartSpinner v-if="signingInWithEmail" />
|
||||||
<SmartSpinner />
|
<SmartLoadingIndicator v-else />
|
||||||
</div>
|
|
||||||
<div v-else class="text-sm text-secondaryLight animate-pulse">
|
|
||||||
<AppLogo class="h-8 w-8" />
|
|
||||||
</div>
|
|
||||||
<pre v-if="error">{{ error }}</pre>
|
<pre v-if="error">{{ error }}</pre>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 287 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 274 KiB |
BIN
static/images/screenshots/light_graphql.png
Normal file
BIN
static/images/screenshots/light_graphql.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 321 KiB |
BIN
static/images/screenshots/light_rest.png
Normal file
BIN
static/images/screenshots/light_rest.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 397 KiB |
Reference in New Issue
Block a user