Developer Guide#
Warning
Project Neo is currently in Technical Preview. Features described in this section may change before general availability.
The Project Neo Developer Guide covers building custom dashboard extensions that load into the Project Neo host application at runtime. Extensions are separate React and TypeScript projects with their own repository, dependencies, and build pipeline. They connect to the host through Module Federation, enabling independent development and deployment without requiring changes to the core application.
Overview#
Explains the extension system architecture, what you can build, what is out of scope, and how the host discovers and loads extensions at runtime.
Prerequisites#
Lists the tools and accounts required before creating your first extension, including Node.js 22, a Squirro instance with a refresh token, and GitHub Packages access for the @squirro package scope.
Quick Start#
A step-by-step walkthrough for creating a project, starting the development server, adding a dashboard, and editing your first component.
Project Structure#
Describes the directory layout of a scaffolded extension project and explains the purpose of each file, including which files to edit and which to leave untouched.
CLI Reference#
A complete reference for all nextgen CLI commands, including nextgen create project, nextgen create dashboard, nextgen dev, and nextgen build.
The Extension Manifest#
Describes the manifest file that declares the dashboards your extension provides, including all available fields and their accepted values.
Building Dashboard Components#
Covers how to build dashboard components using shared libraries, navigate between views, and access the active project context.
Styling and Components#
Covers how to style extension dashboards using the shared component library, Tailwind CSS utility classes, and Lucide icons.
Squirro API#
Describes how to call the Squirro API from within an extension, including authentication, available endpoints, and the provided API client.
Translations#
Explains how to use extensions to override text strings in the core Project Neo interface per language, without modifying host code.
Local Development#
Covers the local development server in detail, including hot reloading, environment variables, proxy configuration, and debugging.
Building and Deploying#
Describes how to build an extension for production and deploy it to a Squirro instance via the frontend.ui-bundle project setting.
Troubleshooting#
Covers common issues encountered when developing Project Neo extensions, with diagnostic steps and solutions.