go-plugin
OS-NVR
Our great sponsors
go-plugin | OS-NVR | |
---|---|---|
28 | 6 | |
4,633 | 93 | |
2.2% | - | |
6.8 | 0.0 | |
3 days ago | 24 days ago | |
Go | Go | |
Mozilla Public License 2.0 | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-plugin
- Wazero: Zero dependency WebAssembly runtime written in Go
-
referencing packages on the internet and using go plugin
I'd recommend looking into a different approach for plugins such as hashicorp/go-plugin (which uses multiple process PIDs and RPC communication between them) or traefik/yaegi (which implements a Go-compatible scripting language that can be interpreted at runtime and which still supports most Go modules).
- Can Go dynamically load library module at runtime?
-
Binary packages alternative
You'll never fully protect your code from someone who's dead-set on reverse-engineering it, however, you can use https://github.com/hashicorp/go-plugin or a similar RPC technique, which will let you ship binary plugins and will also be less fragile and janky compared to something made with `-buildmode=plugin`.
-
How would you guys support plugins in a Go app? (or any other compiled language for that matter)
The plugin system that hashicorp uses for all their projects works very well. It's essentially a local RPC implementation. https://github.com/hashicorp/go-plugin
-
Change go code behaviour at runtime
The leader is almost for certain https://github.com/hashicorp/go-plugin which uses RPC. This prevents some of the binary compatibility issues from the standard library option, operating system issues from the standard library option, and it is in use by lots of large projects from Terraform to Packer, Nomad, and Vault.
-
Is the documentation for making non-go plugins in the go-plugin repo outdated?
can you try older go-plugin versions? The only major change in v1.4.4 was a bugfix for automtls. https://github.com/hashicorp/go-plugin/blob/master/CHANGELOG.md
-
Go and plugins ?
I strongly recommend to use Hashicorp/Plugin, that is more battle tested and could be extended and used by others languages.
-
DLL Architecture in Go
Doesn't sound too crazy to me. Maybe worth checking out https://github.com/hashicorp/go-plugin -- they came up with something similar for dealing with extensions/plugins.
OS-NVR
- Home Security Camera Software
-
surveillance station
OS-NVR
-
OS-NVR - Mobile friendly CCTV software
There is a GitHub mirror. Do allot of people use GitHub to discover software? https://github.com/OSNVR/OS-NVR
- Small NVR system
What are some alternatives?
frigate - NVR with realtime local object detection for IP cameras
wasmer - 🚀 The leading WebAssembly Runtime supporting WASIX, WASI and Emscripten
viseron - Self-hosted, local only NVR and AI Computer Vision software. With features such as object detection, motion detection, face recognition and more, it gives you the power to keep an eye on your home, office or any other place you want to monitor.
go-plugin-benchmark - Benchmark comparing the go plugin package to other plugin implementations
rust - Empowering everyone to build reliable and efficient software.
os-nvr
vopono - Run applications through VPN tunnels with temporary network namespaces
brains - ⚡️ My Digital Brain
go-plug
scraper - Nodejs web scraper. Contains a command line, docker container, terraform module and ansible roles for distributed cloud scraping. Supported databases: SQLite, MySQL, PostgreSQL. Supported headless clients: Puppeteer, Playwright, Cheerio, JSdom.
doods - DOODS - Dedicated Open Object Detection Service
scraper - A scraper for EmulationStation written in Go using hashing