A powerful, multi-platform personal workspace for tools, utilities, and solutions to real-world problems I face, developed by ASAS Labs.
ASAS Workbench is an extensible cross-platform application designed to bring tools, workflows, utilities, and creative ideas into one polished workspace across Android, Linux, and Windows.
Built with a robust hybrid architecture utilizing Go + Wails for desktop and Capacitor for Android, paired with a modern React + TypeScript + Vite frontend, ASAS Workbench is engineered for continuous growth, clean separation of concerns, and rapid feature expansion.
ASAS Workbench is my personal, powerful workspace where I can seamlessly add new tools and workflows as I need them.
The goal is to have a single application to host solutions to the real-world problems I encounter, ensuring the application remains maintainable as it grows.
Everything is organized around independent feature modules and a centralized route registry, allowing ASAS Workbench to continuously evolve.
ASAS Workbench follows a feature-first architecture with a centralized route registry (frontend/src/config/routes.tsx) and application shell layout (AppShell).
It supports multiple platforms from a unified codebase:
- Desktop (Linux & Windows): Powered by Go + Wails, exposing native Go backend services directly via thin Wails bindings to the React frontend.
- Mobile (Android): Powered by Capacitor, wrapping the web frontend for Android devices with native asset integration and Gradle builds.
ASAS Workbench/
│
├── cmd/
│ └── main.go
│
├── backend/ # Go Backend (Desktop native services)
│ ├── app/
│ ├── internal/
│ │ ├── settings/
│ │ └── workspace/
│ ├── repository/
│ ├── infrastructure/
│ └── shared/
│
├── frontend/ # React + TypeScript Frontend (Shared across Desktop & Android)
│ ├── android/ # Capacitor Android project wrapper & Gradle build configs
│ └── src/
│ ├── app/
│ │ ├── App.tsx
│ │ └── shell/
│ │ └── AppShell.tsx
│ │
│ ├── config/
│ │ └── routes.tsx # Single source of truth for features & navigation
│ │
│ ├── features/ # Isolated feature modules (dashboard, settings, etc.)
│ │ ├── dashboard/
│ │ └── settings/
│ │
│ ├── components/
│ │ └── common/
│ │
│ └── styles/
│ └── globals.css
│
├── docs/
│ └── ARCHITECTURE_GUIDE.md
│
├── Makefile # Cross-platform build & dev automation tasks
└── build/
A new feature lives entirely inside its own module:
features/
└── my-new-tool/
├── pages/
├── components/
├── hooks/
├── services/
├── types.ts
└── index.ts
Adding a new tool or feature is as simple as creating the feature folder, writing your page component, and registering it in frontend/src/config/routes.tsx. It automatically appears in the sidebar navigation and command search palette (Cmd/Ctrl + K)!
| Layer | Technology |
|---|---|
| Desktop Framework | Wails (Go) |
| Mobile Framework | Capacitor (Android) |
| Backend | Go |
| Frontend | React |
| Language | TypeScript |
| Build Tool | Vite |
| Persistence | SQLite-ready architecture |
| UI & Icons | Lucide React & Custom CSS |
| Platforms | Linux, Windows, Android |
Frontend:
React
↓
Feature Service (Service Layer wrapping Wails Go bindings / Capacitor APIs)
↓
Wails API / Native Bridge
↓
Go Service (Desktop)
↓
Repository / Infrastructure
Business logic should not be buried inside React components or direct platform calls.
Features communicate through stable public interfaces rather than importing each other's internal implementation.
- Go (for Desktop Wails backend)
- Node.js & npm
- Wails CLI (
go install github.com/wailsapp/wails/v2/cmd/wails@latest) - Android Studio / Android SDK (optional, for Android builds)
ASAS Workbench provides a convenient Makefile to handle development and cross-platform builds:
make frontend
# or: cd frontend && npm installmake dev
# Runs: wails dev -tags webkit2_41- Linux Build:
make build-linux
- Windows Build:
make build-windows
- Android Build (Debug APK via Capacitor & Gradle):
make build-android
Please check docs/ARCHITECTURE_GUIDE.md for a comprehensive 3-step guide on adding new pages and features to ASAS Workbench.
ASAS Workbench
- Short name: ASAS Workbench
- Brand: ASAS Labs
🚧 Active Development
The core architecture, navigation shell, command palette, dashboard, settings module, and multi-platform support (Android, Linux, Windows) are fully established. I am actively adding new personal tools and workflows as needed.
This is a personal workspace for ASAS Labs.
MIT
ASAS Labs · Building ASAS Workbench