• Stars
    star
    292
  • Rank 142,152 (Top 3 %)
  • Language
    Go
  • License
    MIT License
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

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

Repository Details

🖥️ a modern remote desktop proxy written in Go

logo

Occamy

Latest relsease Build Status Go Report Card

Occamy is an open source protocol and proxy for modern remote desktop control that written in Go.

To start using Occamy

Build

Occamy support deployment with Docker or container orchestration tool, e.g. K8s. To build Occamy, you need:

git clone https://github.com/changkun/occamy.git
cd occamy
make build

Then you should be able to run occamy with:

docker run -itd occamy:latest

APIs

Occamy offers two APIs:

  • /api/v1/login distributes JWT tokens for authentication and
  • /api/v1/connect is used for WebSocket based Occamy connection.

If you build Occamy with web client, you can also access /static for web client demo.

Demo

To run a demo, you need build an occamy client first:

cd client/occamy-web
npm install && npm run build

With docker-compose, you should be able to run a working demo with:

make build
make run
make stop

Here is a working video demo:

IMAGE ALT TEXT

Contributing

Easiest way to contribute is to provide feedback! We would love to hear what you like and what you think is missing. PRs are welcome. Please follow the given PR template before you send your pull request.

Why Occamy and how it works?

Occamy implements a generic remote desktop protocol with modern approaches. It currently performs Guacamole protocol and eventually intends to redesign and propose Occamy protocol.

The benefits of Occamy that differ from Guacamole are:

  • Authentication supports
  • Simplified architecture
  • Streaming compression and optimization
  • Modern with Go

Occamy server side currently simplifies Guacamole proxy and Guacamole servlet client in a single middleware application. Any client that involves Guacamole protocol and uses WebSocket for authentication can directly switch to interact to Occamy without any changes.

Read more details in docs.

License

Occamy | MIT © 2019 Ou Changkun

More Repositories

1

modern-cpp-tutorial

📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly | https://changkun.de/modern-cpp/
C++
21,589
star
2

midgard

⛰️ Universal clipboard sharing service (supports macOS/Linux/Windows/iOS)
Go
208
star
3

dotfiles

personal development settings
Vim Script
146
star
4

german-tutorial

德语零基础教程
66
star
5

sched

⏳ a high performance reliable task scheduling package in Go.
Go
48
star
6

resume

resume and curriculum vitae
TeX
42
star
7

translation

欧长坤个人笔译作品合集
36
star
8

pkg

🥼 personal Go codebase
Go
34
star
9

changkun-blog-clients

Changkun's Blog Desktop&Mobile Client
JavaScript
30
star
10

gitcheat

Cheating Git Contribute History
Python
25
star
11

generics

Deprecated! See https://github.com/golang-design/go2generics.
Go
25
star
12

gp

🏭 Geometry Processing at LMU Munich
TypeScript
24
star
13

tli

☑️ A Things 3 CLI
Go
21
star
14

urlstat

📈 URL access statistic service
Go
18
star
15

cgo-benchmarks

Benchmarks between Cgo, Go and C
Go
16
star
16

cg1

📺 Computer Graphics at LMU Munich
TypeScript
16
star
17

gopherchina2023gogpu

Talk "Go on GPU" in GopherChina 2023
Go
14
star
18

LeapDocCN

LeapMotion 官方文档中文翻译
14
star
19

ws-18-19-deep-learning-tutorial

Deep Learning and Artificial Intelligence Tutorial @ LMU WS 2018/19
Jupyter Notebook
13
star
20

chat

ChatGPT in command line
Go
12
star
21

rmtrash

🗑️ Move directory entries to Trash
Go
11
star
22

lmu-thesis-latex

📔 A LaTeX template for LMU Master/Bachelor theses (paper+slides).
TeX
10
star
23

office

🏢 Is Changkun in the Office?
Go
9
star
24

bo

🔍 Bayesian Optimization in Go
Go
8
star
25

compiler-of-training

西南民族大学2015年春季学期秦沿海《编译原理》课程设计的Training语言的词法、语法、语义分析源代码。
C++
8
star
26

blog

✍️ Changkun's Blog
Go
8
star
27

muenchen-termin

Automated appointment booking service for muenchen.de
Python
8
star
28

UniWorXMonitor

🖥 A better LMU UniWorX System with new courses notifications.
HTML
8
star
29

ss18-machine-learning-tutorial

LMU Summer Semester 2018 Machine Learning Tutorial Materials
Jupyter Notebook
7
star
30

research

my research archive (publications/talks/teaching/etc.)
Go
6
star
31

SWUNThesis

LaTeX Thesis Template for Southwest University for Nationalities
TeX
5
star
32

short

short link handler for changkun.de/s/x/
Go
5
star
33

void

void is a zero storage cost file system.
Go
5
star
34

login

Lightweight SSO Login System
Go
5
star
35

computer-networks

Lecture notes of Computer Networks and Distributed Systems
4
star
36

theoretical-ml

Reading list of machine learning theoretical papers
4
star
37

BachelorThesis

Designing Alternative Contact-free Control Modalities for Smart Watches
PostScript
4
star
38

ser

a simple http server as replacement of python -m http.server
Go
4
star
39

awesome-go-graphics

awesome graphics projects in Go
3
star
40

gitchain

GitHub repositories meets cryptocurrencies.
Jupyter Notebook
3
star
41

twd-chi20

The Walking Data - CHI2020 Late Breaking Work
Go
3
star
42

enhance

A Go package for enhancing photographs (adjusting brightness, contrast, etc.)
Go
3
star
43

intelligence-in-the-loop

Open Source Artifacts for Ph.D. Dissertation: The Intelligence in the Loop
3
star
44

ImageProc

西南民族大学2015年春季学期雷开彬《数字图像处理(上)》实验课源代码。
C++
2
star
45

main

🏠 The entrance of changkun.de
Go
2
star
46

applied-ml

Applied Machine Learning Paper Reading List.
2
star
47

infloop

The Human in the Infinite Loop
Go
2
star
48

upbot

🤖 an uptime monitoring service
Go
2
star
49

apreserve

 apple store shopping appointment checker
Go
2
star
50

gomat

Matrix package with cache-aware lock-free tiling optimization in Go
Go
2
star
51

todo

🕕 todo management
Go
2
star
52

changkun

Github Homepage Profile
2
star
53

goid

retrieve a goroutine id in Go 1
Go
2
star
54

github-follower-net

Analytical Tool for Personal Github Follower Network Centrality
Python
1
star
55

machine-translation-detection

A machine translation detection service.
HTML
1
star
56

web

⚙️ web services in changkun.de, golang.design, etc.
Go
1
star
57

cyclemod2

enable import cycle using modules? (part 2)
Go
1
star
58

speak-alexa

Alexa Skill to practice English.
Python
1
star
59

cat

a replacement to the UNIX's cat written in Go
Go
1
star