All Projects → open-source-labs → Swell

open-source-labs / Swell

Licence: mit
Swell: API development tool that enables developers to test endpoints served over streaming technologies including Server-Sent Events (SSE), WebSockets, HTTP2, GraphQL, and gRPC.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Swell

Mercure
Server-sent live updates: protocol and reference implementation
Stars: ✭ 2,608 (+404.45%)
Mutual labels:  api, graphql, streaming-api, server-sent-events
Pushpin
Proxy server for adding push to your API
Stars: ✭ 3,050 (+489.94%)
Mutual labels:  api, websockets, streaming, server-sent-events
Tyk
Tyk Open Source API Gateway written in Go, supporting REST, GraphQL, TCP and gRPC protocols
Stars: ✭ 6,968 (+1247.78%)
Mutual labels:  api, graphql, grpc
Siler
⚡ Flat-files and plain-old PHP functions rockin'on as a set of general purpose high-level abstractions.
Stars: ✭ 1,056 (+104.26%)
Mutual labels:  graphql, websockets, http2
Miraql
GraphQL performance monitoring & error-handling tool
Stars: ✭ 97 (-81.24%)
Mutual labels:  api, graphql, monitoring
Multi V2ray
v2ray/xray多用户管理部署程序
Stars: ✭ 5,382 (+941.01%)
Mutual labels:  websockets, http2, grpc
Graphql Inspector
🕵️‍♀️ Validate schema, get schema change notifications, validate operations, find breaking changes, look for similar types, schema coverage
Stars: ✭ 1,059 (+104.84%)
Mutual labels:  api, graphql, monitoring
Sapphiredb
SapphireDb Server, a self-hosted, easy to use realtime database for Asp.Net Core and EF Core
Stars: ✭ 326 (-36.94%)
Mutual labels:  sse, websockets, server-sent-events
Graphik
Graphik is a Backend as a Service implemented as an identity-aware document & graph database with support for gRPC and graphQL
Stars: ✭ 277 (-46.42%)
Mutual labels:  graphql, grpc, streaming
Insomnia
The open-source, cross-platform API client for GraphQL, REST, and gRPC.
Stars: ✭ 18,969 (+3569.05%)
Mutual labels:  api, graphql, grpc
Vulcain
Fast and idiomatic client-driven REST APIs.
Stars: ✭ 3,190 (+517.02%)
Mutual labels:  api, graphql, http2
Chronos
📊 📊 📊 Monitors the health and web traffic of servers, microservices, and containers with real-time data monitoring and receive automated notifications over Slack or email.
Stars: ✭ 347 (-32.88%)
Mutual labels:  graphql, grpc, monitoring
Swim
Distributed software platform for building stateful, massively real-time streaming applications.
Stars: ✭ 368 (-28.82%)
Mutual labels:  streaming-api, websockets
Wp Graphql Acf
WPGraphQL for Advanced Custom Fields
Stars: ✭ 358 (-30.75%)
Mutual labels:  api, graphql
Django Api Domains
A pragmatic styleguide for Django API Projects
Stars: ✭ 365 (-29.4%)
Mutual labels:  api, graphql
Villus
🏎 A tiny and fast GraphQL client for Vue.js
Stars: ✭ 378 (-26.89%)
Mutual labels:  api, graphql
Grapi
😮 A surprisingly easy API server and generator in gRPC and Go
Stars: ✭ 364 (-29.59%)
Mutual labels:  api, grpc
Go Api Boilerplate
Go Server/API boilerplate using best practices DDD CQRS ES gRPC
Stars: ✭ 373 (-27.85%)
Mutual labels:  api, grpc
Graphql Dotnet
GraphQL for .NET
Stars: ✭ 5,031 (+873.11%)
Mutual labels:  api, graphql
Graphql Ws
Coherent, zero-dependency, lazy, simple, GraphQL over WebSocket Protocol compliant server and client.
Stars: ✭ 398 (-23.02%)
Mutual labels:  graphql, websockets

License: MIT Build Status GitHub package.json version contributions welcome Tweet

Swell is a API development tool that enables developers to test endpoints served over streaming technologies including Server-Sent Events (SSE), WebSockets, HTTP2, GraphQL and gRPC.

Getting Started

Visit www.getswell.io to download the latest release.

Swell is currently available for OS X, Linux and Windows.

Highlights

Swell is a one-stop shop for sending and monitoring your API requests

  • Send and monitor streams over HTTP2 / HTTP1 (including SSEs) and WebSockets
  • Create GraphQL queries, introspections, mutations, and subscriptions
  • Provides full streaming testing support for gRPC
  • View response timing information and history in an interactive chart for each request
  • Save workspaces of multiple requests for later access
  • Import and export workspaces for sharing
  • Compose test suites in JavaScript with Chai-style TDD/BDD assertion syntax
  • Execute a collection of requests in succession and receive clear visual feedback of each test's status
  • Schedule requests on to be sent on a regular time interval to support endpoint functional validation tests

Supported Technologies

  • HTTP2: Swell supports full HTTP2 multiplexing of requests and responses. HTTP requests to the same host will be sent over the same connection. Swell will attempt to initiate an HTTP2 connection for all HTTPS requests by default, but will revert to HTTP1.1 for legacy servers. Multiple concurrent streams are allowed for each connection.

  • Server-Sent Events (SSE): Initiated by a simple toggle box, Swell displays SSE events one by one as they come in. Similar to HTTP2 streams, multiple open connection streams are allowed for SSE.

  • WebSocket (WS): Swell enables connecting directly to WebSocket servers with an HTTP handshake. Developers can directly send messages to the connected WS server. Messages are displayed in chatbox format, clearly indicating outgoing and incoming messages.

  • GraphQL: Swell includes full support for all three root types of GraphQL - queries, mutations, and subscriptions as well as Introspection - with and without variables. Smart code editor allows for easy query creation.

  • gRPC: Swell includes full support for all four streaming types of gRPC - unary, client stream, server stream, bidirectional stream.

Additional Features

  • Scripting in Swell: Swell allows you to write assertion tests to aid in the test-driven development cycle of backend API services.
  • Workspaces: Swell allows you to save workspaces for easier testing of multiple requests.
  • Import/Export Workspaces: Swell allows you to import and export workspaces, making it easy to share collections with your team.
  • Preview: You can now view a rendered preview of certain API responses (HTML)
  • Collection Runner: You can also stage requests in the workspace and automate the process of sending off each one. No need to manually press send on each one, instead each request will fire off in the order of staging.
  • Schedule Tests: You can also automate sending requests to occur on a periodic basis.

Built With

  • Electron
  • React
  • Redux
  • Apollo Client
  • Websockets
  • gRPC-js
  • VM2
  • Chart.js
  • Bulma
  • IndexedDB
  • Chai
  • Mocha

Authors

License

This project is licensed under the MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].