A web user interface for subscription reporting, based on PatternFly.
Curiosity Frontend provides a comprehensive UI for managing and reporting on Red Hat subscriptions, usage, and capacity.
- Node.js 20+
- npm
For in-depth tooling, environment, and proxy setup guidance see docs/development.md.
-
Clone the repository
$ git clone https://github.com/RedHatInsights/curiosity-frontend.git -
Within the repo context, install project dependencies
$ cd curiosity-frontend && npm install
This is the base context for running a local UI against a mock API and styling.
- Create a local dotenv file called
.env.localand add the following contentsREACT_APP_DEBUG_MIDDLEWARE=true REACT_APP_DEBUG_ORG_ADMIN=true REACT_APP_DEBUG_PERMISSION_APP_ONE=subscriptions:*:* REACT_APP_DEBUG_PERMISSION_APP_TWO=inventory:*:* - In a terminal instance within the repository root, run:
$ npm start - Start developing against files in
./src. Linting feedback will be automatically enabled through the terminal output
For in-depth local run guidance review docs/development.md.
Run and update unit tests during development. In a new terminal instance:
- Within the repository root, run:
$ npm run test:dev - Test files are located in
__tests__directories parallel to the source files. Test failures for recently edited files will be available in the terminal output along with basic testing framework use directions.
For in-depth testing guidance review docs/development.md.
For comprehensive development and project architecture read the docs.
- Development: Reference for development strategy, debugging, and testing.
- Architecture: Learn about the application structure and data flow.
Contributing? Guidelines can be found here CONTRIBUTING.md.
If you're using an AI assistant to help with development in this repository, please prompt it to review the repo guidelines to ensure adherence to project conventions.
Guidelines for developer-agent interaction can be found in CONTRIBUTING.md.