Skip to content

Releases: YesWeAreBot/yes-core

v0.1.0 - Initial Microkernel Release

Choose a tag to compare

@HydroGest HydroGest released this 15 Jul 05:40

Welcome to the first release of yes-core! 🎉

This version establishes the pure microkernel architecture. It contains zero business logic, focusing entirely on providing a robust, extensible foundation for any event-driven system in Go.

✨ Core Features

  • Plugin Lifecycle: Strict Init -> Start -> Stop management with graceful shutdown (SIGINT/SIGTERM).
  • EventBus: Async pub/sub mechanism for loose cross-component coupling.
  • Registry: Service locator for strong-typed, synchronous cross-plugin calls.
  • DAG Topological Sort: Automatically resolves plugin dependencies (via DependsOn()) using Kahn's algorithm. Safe from circular dependencies and import-order issues.
  • Auto-Registration: Utilizes Go's init() for elegant, assembly-line style main.go.

📦 Installation

go get github.com/yeswearebot/yes-core@v0.1.0

🚀 Quick Start

package main

import (
  "github.com/yeswearebot/yes-core/core"
  // _ “github.com/yourname/plugin-xxx”
)

func main() {
  app := core.NewApp()
  if err := app.Run(); err != nil {
    panic(err)
  }
}

📝 Notes

This release only includes the core framework. Adapters (OneBot/Discord), AI logic, and Addon Loaders will be maintained as separate independent repositories in the future to keep the kernel pure.