• Stars
    star
    1,598
  • Rank 29,281 (Top 0.6 %)
  • Language
    JavaScript
  • License
    Other
  • Created about 2 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A cross-platform runtime for Web developers to build desktop & mobile apps for any OS using any frontend library.

Description

Web Developers use Socket Runtime to create apps for any OS, desktop, or mobile. You can use plain old HTML, CSS, and JavaScript, as well as your favorite front-end libraries for example React, Svelte, and Vue.

Socket Runtime exposes primitives needed for building peer-to-peer and local-first applications, such as Bluetooth, UDP, and robust file system access. Our P2P component can help you connect your app's users, and let them communicate directly, without the cloud or any servers at all.

The Socket Runtime CLI compiles applications into hybrid-native applications &mbasp; meaning, a combination of web code running in a platform's "WebView" along with platform-native code: Kotlin/Java on Android, Swift/Objective-C on iOS, C++ on Windows or Linux, etc.

๐Ÿ’ก Features

  • Local First, a full-featured File system API & Bluetooth.
  • P2P & Cloud, built to support a new generation of apps that can connect directly to each other by providing a high-performance UDP API.
  • Use any backend, business logic can be written in any language, Python, Rust, Node.js, etc. The backend is even completely optional.
  • Use any frontend, you can use your favorite frontend framework to create your UIs: React, Svelte, Vue and more.
  • Maintainable, zero dependencies, and a smaller code base than any other competing project.
  • Lean & Fast, uses a smaller memory footprint and creates smaller binaries than any other competing project.

๐Ÿ”‘ FAQ

Check the FAQs on our Website to learn more.

๐Ÿงฑ Building your first Socket app !

Create Socket App is similar to React's Create React App, we provide a few basic boilerplates and some strong opinions so you can get coding on a production-quality app as quickly as possible.
Please check create-socket-app Repo to get started and to learn more.
You can also check our Examples in the Examples Repo.

๐Ÿ“š Documentation

The full documentation can be found on the Socket Runtime website.
The Socket Runtime documentation covers Socket APIs, includes examples, multiple guides (Apple, Desktop, and Mobile), P2P documentation, and more.

๐Ÿงช Testing

Socket provides a built-in test runner similar to node:test which outputs the test results in TAP format. You can also check: test/ for the unit and integration test suite.

๐Ÿ™ Contributing

We welcome contributions from everyone! Please check our Contributing Guide to learn more. Don't hesitate to stop by Discord and ask the team about your issue and if someone is already working on it.
Please connect with any current project contributors: @heapwolf, @jwerle, @chicoxyzzy, or @dj_rocktimus if you want to contribute to the Socket Runtime project itself.
Thank you for your interest in reporting/fixing issues and contributing to Socket!

More Repositories

1

unionstudio.app

Support Repo
JavaScript
1,228
star
2

tonic

A Low Profile Component Framework โ€“ Stable, minimal, easy to audit, zero-dependencies and build-tool-free.
JavaScript
868
star
3

create-socket-app

Create Socket App, is like Create React App but helps you build native apps for mobile and desktop with Svelte, Reactjs, Vuejs and others!
JavaScript
133
star
4

socket-examples

Socket Runtime Examples โ€“ see how your favorite front-end framework is used to build cross platform UIs
SCSS
116
star
5

components

Example Components (Built with Tonic)
JavaScript
84
star
6

tapzero

Zero dependency test framework
JavaScript
33
star
7

ltp

a very simple in-place binary format
JavaScript
29
star
8

sockets.sh

Build incredibly light-weight native, networked apps for desktop and mobile using JS, HTML and CSS
JavaScript
29
star
9

nat-traversal-spec

[Research] A draft of a nat traversal spec for use with the socket runtime.
28
star
10

nat-check

tool for testing nat behavior and the ability to create p2p connections
JavaScript
22
star
11

secret-local-storage

A wrapper around 'localStorage/sessionStorage' to provide storage encryption with libsodium
JavaScript
22
star
12

socket-api

A Node.js / Posix-like JavaScript front-end API for the Socket Runtime
JavaScript
21
star
13

fake-api-gateway-lambda

This is a testing utility for testing your lambda functions.
JavaScript
21
star
14

introducer

[Research] A minimal useful library for creating p2p connections, using an introducer server
JavaScript
20
star
15

swarm

[Research] Creating a p2p network with hole punching udp
JavaScript
19
star
16

treehash

hash a large file into a tree
JavaScript
16
star
17

libssc

Socket SDK client library written in C99
C
15
star
18

tonic-docs

Documentation for Tonic Framework
JavaScript
15
star
19

kaat

JavaScript
12
star
20

p2p3js

a real-time multi-player three.js game
JavaScript
11
star
21

tonic-ssr

Server side adapter for Tonic
JavaScript
11
star
22

netsim

network simulator with NAT modeling so can test p2p systems
JavaScript
10
star
23

ssc-node

Node.js implementation of the Socket SDK client
JavaScript
10
star
24

module-json-store

JSON-based storage (filesystem) with localStorage-compatible API
JavaScript
9
star
25

p2p-supercollider

holepunching simulator
JavaScript
9
star
26

socket-repl

A JavaScript REPL interface for the Socket Runtime โ€“ Experiment with browser APIs from your console!
JavaScript
9
star
27

fake-aws

This package contains a set of fake AWS servers that can be used as part of your integration test suite.
JavaScript
9
star
28

next-native

Next.js Native
JavaScript
9
star
29

socket-service-worker-examples

Various Service Worker examples for the Socket Runtime
JavaScript
8
star
30

async-level

Create an Async friendly interface around leveldown.
JavaScript
8
star
31

indexed

Indexed
JavaScript
7
star
32

sfspeechrecognizer-example

An example Socket Runtime application that uses the SFSpeechRecognizer Framework
CSS
6
star
33

op-node

Node js implementation of the op api client
JavaScript
6
star
34

socket-pipe

A high level module for using Node.js as a Socket Runtime backend
JavaScript
6
star
35

adb-logcat-app

Stream logs with `adb` filtered by app id.
Shell
5
star
36

op-bash-example

Operator Framework Bash backend example
Shell
4
star
37

website-create-react-app

Create a static website with Serverless Studio
JavaScript
3
star
38

mobile

Operator Framework JavaScript adaptor for network and file IO on iOS and Android
JavaScript
3
star
39

socket-api-tests-workflow

The sharable GitHub workflow to run CI tests on Socket Runtime and io
3
star
40

test-dom

DOM testing
JavaScript
3
star
41

ssc-test

JavaScript
3
star
42

bash-pipes-and-socket-sdk

Companion repository for https://socketsupply.co/blog/bash-pipes-and-socket-sdk
Shell
3
star
43

msvc-bash-env

Initialize a MSVC environment for your shell
Shell
3
star
44

docs

Public docs
2
star
45

cxx-modules-examples

Shell
2
star
46

socket-sdk-kotlin-native-example

A Socket SDK example application that uses Kotlin/Native and Kotlin.js.
Kotlin
2
star
47

socket-macos-hotkey-extension-example

A Socket Runtime native extension example that uses the macOS Carbon API to register hotkeys
Objective-C++
2
star
48

dynavolt

A highly opinionated DynamoDB client for aws-sdk v3 using esm.
JavaScript
2
star
49

.github

1
star
50

libudx

socket-sdk compatible fork of libudx
JavaScript
1
star