Vidyano is a client-side TypeScript library for building data-driven applications that connect to a Vidyano .NET backend. It consists of a platform-agnostic core library (@vidyano/core) that can be used in any JavaScript environment (browser, Node.js, etc.) and a complete web components package (@vidyano/vidyano) for building dynamic UIs.
vidyano/
├── dev/ # .NET backend for development
│ └── wwwroot/ # Build output for development
├── docs/
│ └── core/ # Core library documentation
├── src/
│ ├── core/ # Platform-agnostic core library
│ └── vidyano/ # UI components
└── tests/
├── core/ # Core library tests
└── vidyano/ # UI component tests
- Node.js (LTS version recommended)
- .NET SDK (for development backend)
# Install dependencies
npm install# Start the backend server (localhost:5000)
npm run dev
# In another terminal: Build the project
npm run build
# Run tests
npm testThe npm run dev command starts the .NET backend server. It will check if the server is already running and only start it if needed.
Watch Mode: For active development, use the VS Code task "rollup: watch" which automatically rebuilds on file changes. Do not run npm run build while watch mode is active as this will cause conflicts.
| Command | Description |
|---|---|
npm run build |
Full build pipeline (Sass → TypeScript → Rollup) |
npm run build:sass |
Compile SCSS to CSS |
npm run build:ts |
Compile TypeScript |
npm run build:rollup |
Bundle with Rollup |
npm run dist -- <version> <gitHash> |
Create distribution packages with specified version and git hash |
npm test |
Run Playwright tests |
Components in src/vidyano/ follow this pattern:
- Each component has its own folder (e.g.,
src/vidyano/my-component/) - Component folders contain:
.tsfile - TypeScript source (required).scssfile - Component styles (required).htmlfile - Component template (optional)
This project is licensed under the MIT License.