Skip to content

danilosnt/FinOps

Repository files navigation

GHBanner

FinOps Maturity Evaluator

Evaluate your company's IT Governance and FinOps maturity with a structured questionnaire and AI-generated reports.

React Vite TypeScript Gemini


About the Project

FinOps Maturity Evaluator is a web application that assesses an organization's maturity level in FinOps (Financial Operations) and IT Governance practices. The tool guides the user through a 3-step flow and generates a comprehensive diagnostic report using the Google Gemini API.

The generated report is based on industry-recognized frameworks such as COBIT 2019, ITIL 4, ISO/IEC 27001, and ISO 27005, providing professional-grade analysis of the evaluated IT environment.


Features

Feature Description
Company Registration Collects basic information: name, industry sector, and company size
Maturity Questionnaire 15 questions organized across 5 categories, rated on a 1–5 scale
Maturity Score Automatic calculation with 3-tier classification (Beginner, Intermediate, Advanced)
AI-Powered Report Comprehensive diagnostic generated by Google Gemini with COBIT mapping, ISO 27005 risk analysis, and action plan
PDF Export Download the full report as a PDF file
Responsive UI Modern design with smooth animations and transitions

Assessment Categories

The questionnaire covers 5 maturity dimensions:

  1. FinOps Culture — Dedicated team existence, stakeholder participation, financial awareness
  2. Visibility & Data — Cost allocation, real-time visibility, asset cataloging
  3. Optimization & Efficiency — Idle resource review, reserved instances, automation
  4. Governance & Compliance — Approval processes, security controls, business continuity
  5. Planning & Strategy — Modernization roadmap, legacy system integration, unit economics

Tech Stack

  • Frontend: React 19 + TypeScript
  • Build Tool: Vite 6
  • Styling: Tailwind CSS 4 + shadcn/ui
  • Animations: Motion (Framer Motion)
  • AI: Google Gemini API (gemini-2.5-flash)
  • PDF: jsPDF
  • Backend/DB: Firebase (Firestore) — authentication and persistence
  • Icons: Lucide React

Getting Started

Prerequisites

  • Node.js (version 18 or higher)
  • Google Gemini API Key — obtain one at Google AI Studio

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/FinOps.git
    cd FinOps
  2. Install dependencies:

    npm install
  3. Configure the Gemini API key:

    Create a .env.local file in the project root with the following content:

    VITE_GEMINI_API_KEY=your_key_here
  4. Start the development server:

    npm run dev
  5. Open in your browser:

    http://localhost:3000
    

Usage Flow

┌─────────────────┐     ┌─────────────────────┐     ┌─────────────────────┐
│  STEP 1         │     │  STEP 2             │     │  STEP 3             │
│  Company        │────>│  Maturity            │────>│  Results +          │
│  Registration   │     │  Questionnaire (15Q) │     │  AI Report          │
└─────────────────┘     └─────────────────────┘     └─────────────────────┘
  Name, Sector,           1-5 scale per              Score, COBIT Level,
  Size                    category                   Exportable PDF
  1. Step 1 — Registration: Enter the company name, industry sector, and size (Small, Medium, Large, or Enterprise).
  2. Step 2 — Questionnaire: Answer 15 questions about FinOps and IT Governance practices, scoring from 1 (Disagree) to 5 (Agree).
  3. Step 3 — Results: View the maturity score and generate a detailed report with analysis, risks, and recommendations. Export the results as a PDF.

Project Structure

FinOps/
├── index.html                  # HTML entry point
├── package.json                # Dependencies and scripts
├── vite.config.ts              # Vite configuration
├── tsconfig.json               # TypeScript configuration
├── vercel.json                 # Deployment configuration (Vercel)
├── firestore.rules             # Firestore security rules
├── components/                 # UI components (shadcn/ui)
│   └── ui/                     # Button, Card, Input, Select, etc.
├── lib/                        # Utilities (cn, etc.)
└── src/
    ├── main.tsx                # React application bootstrap
    ├── App.tsx                 # Main component (3-step flow)
    ├── index.css               # Global styles
    ├── firebase.ts             # Firebase configuration
    ├── constants/
    │   └── questions.ts        # Questionnaire questions + diagnostic fields
    ├── contexts/
    │   └── AuthContext.tsx      # Authentication context
    └── services/
        └── geminiService.ts    # Google Gemini API integration

Available Scripts

Command Description
npm run dev Starts the development server on port 3000
npm run build Creates the production build in the dist/ folder
npm run preview Previews the production build locally
npm run lint Checks for TypeScript type errors
npm run clean Removes the dist/ folder

License

This project is for academic/internal use.


Powered by Google Gemini

About

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors