f28c2b121e
Backend Go: - MatrixService with Login/GetSession/Logout bindings - Uses 3 registry helpers via go.work: - mas_oidc_loopback_go_infra (PKCE flow) - keyring_token_store_go_infra (SO keychain) - matrix_client_init_go_infra (mautrix client) - whoami helper to discover user_id+device_id pre-init Frontend React+Vite+TS: - Mantine v7 + @tabler/icons-react - LoginScreen with 'Sign in with Matrix' button - HomeScreen with profile card + logout - Dark theme violet accent - @mantine/notifications wired Wails config: - Switched to pnpm (workspace: protocol) - Bindings auto-generated for MatrixService - 1280x800 default window Build: 68MB linux/amd64 binary in build/bin/
38 lines
657 B
Go
38 lines
657 B
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"embed"
|
|
"log"
|
|
|
|
"github.com/wailsapp/wails/v2"
|
|
"github.com/wailsapp/wails/v2/pkg/options"
|
|
"github.com/wailsapp/wails/v2/pkg/options/assetserver"
|
|
)
|
|
|
|
//go:embed all:frontend/dist
|
|
var assets embed.FS
|
|
|
|
func main() {
|
|
ms := NewMatrixService()
|
|
|
|
err := wails.Run(&options.App{
|
|
Title: "matrix_client_pc",
|
|
Width: 1280,
|
|
Height: 800,
|
|
AssetServer: &assetserver.Options{
|
|
Assets: assets,
|
|
},
|
|
BackgroundColour: &options.RGBA{R: 26, G: 27, B: 30, A: 1},
|
|
OnStartup: func(ctx context.Context) {
|
|
ms.SetContext(ctx)
|
|
},
|
|
Bind: []interface{}{
|
|
ms,
|
|
},
|
|
})
|
|
if err != nil {
|
|
log.Fatalln("Wails error:", err)
|
|
}
|
|
}
|