The Financial Account Tool is a frontend-only web application designed to help Small and Medium Enterprises (SMEs) evaluate their financial governance maturity through a structured Yes/No questionnaire. This tool promotes financial transparency, identifies internal control weaknesses, and supports better financial decision-making.
- No Backend Required: Fully client-side application with no server dependencies
- No Authentication: Immediate access without user accounts
- No Data Persistence: All processing happens in the browser
- Professional Assessment: Based on COSO-aligned risk thinking and professional financial judgment
- Public Interest Tool: Designed as open-source evidence for public benefit
The tool presents 20 carefully crafted governance questions categorized by impact level:
- 8 High-Impact Questions: Critical controls that materially affect risk
- 8 Medium-Impact Questions: Process maturity and operational discipline
- 4 Low-Impact Questions: Governance hygiene and continuous improvement
Each question is weighted differently, and the tool calculates a comprehensive risk score that categorizes organizations into Low, Medium, or High governance risk levels.
Before you begin, ensure you have the following installed on your system:
- Node.js (version 18 or higher)
- npm (Node Package Manager - comes with Node.js)
If you don't have Node.js installed:
- Visit the official Node.js website: https://nodejs.org/
- Download the LTS (Long Term Support) version for your operating system
- Run the installer and follow the installation wizard
- Verify installation by opening your terminal/command prompt and running:
You should see version numbers displayed (e.g.,
node --version npm --version
v20.10.0and10.2.3)
Navigate to the project directory:
cd /path/to/FinancialAssesmentGovernencegit clone <repository-url>
cd FinancialAssesmentGovernenceOnce you're in the project directory, install all required dependencies:
npm installThis command will:
- Read the
package.jsonfile - Download and install all required packages (Next.js, React, TypeScript, Tailwind CSS, etc.)
- Create a
node_modulesdirectory with all dependencies - Generate a
package-lock.jsonfile for dependency version locking
Expected output: You should see a list of installed packages and a message indicating successful installation. This process may take a few minutes depending on your internet connection.
Start the development server:
npm run devExpected output: You should see something like:
▲ Next.js 15.x.x
- Local: http://localhost:3000
- Ready in X.XXs
- Open your web browser
- Navigate to: http://localhost:3000
- You should see the Financial Governance Self-Assessment Tool homepage
To stop the development server, press Ctrl + C in your terminal.
When you're ready to build the application for production:
-
Build the application:
npm run build
This creates an optimized production build in the
.nextdirectory. -
Start the production server:
npm start
The application will run on http://localhost:3000 in production mode.
- 20 Governance Questions: Categorized by impact level (High, Medium, Low)
- Weighted Scoring System: High Impact (3 points), Medium Impact (2 points), Low Impact (1 point)
- Risk Classification: Automatically categorizes organizations into Low, Medium, or High Risk
- PDF Export: Generate and download assessment reports
- Progress Tracking: Visual progress indicator showing completion status
- Responsive Design: Works on desktop, tablet, and mobile devices
- No Backend Required: Fully client-side application
- Next.js 15: React framework with App Router
- React 19: Latest version of React library
- TypeScript: Type-safe JavaScript
- Tailwind CSS: Utility-first CSS framework for styling
The assessment uses a weighted scoring system:
- High Impact Questions (8 questions): 3 points each
- Medium Impact Questions (8 questions): 2 points each
- Low Impact Questions (4 questions): 1 point each
- Maximum Possible Score: 44 points (8×3 + 8×2 + 4×1)
Scoring Rules:
- Answering "Yes" earns the full weight for that question
- Answering "No" earns zero points
- Total score is the sum of all "Yes" responses multiplied by their respective weights
Based on the total score, organizations are classified into risk levels:
-
Low Risk: 35-44 points
- Message: "The organization demonstrates strong financial governance and control discipline. The likelihood of material misstatement or compliance failure is low."
-
Medium Risk: 22-34 points
- Message: "The assessment indicates moderate governance risk. Certain financial processes and controls require improvement to strengthen reliability and oversight."
-
High Risk: 0-21 points
- Message: "Significant financial governance weaknesses are present. Immediate corrective action is recommended to mitigate risk of errors, fraud, or non-compliance."
Important: If 3 or more High-Impact questions are answered "No", the assessment is automatically classified as High Risk, regardless of the total score. This override rule mirrors real-world audit and controller judgment.
FinancialAssesmentGovernence/
├── app/
│ ├── layout.tsx # Root layout component
│ ├── page.tsx # Main assessment page
│ └── globals.css # Global styles and Tailwind imports
├── components/
│ ├── QuestionCard.tsx # Individual question component with Yes/No buttons
│ ├── ProgressIndicator.tsx # Progress bar component
│ └── ResultsDisplay.tsx # Results page component with PDF export
├── lib/
│ ├── questions.ts # Question data structure (all 20 questions)
│ └── scoring.ts # Scoring and risk calculation logic
├── Guide.md # Complete development guide
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── tailwind.config.ts # Tailwind CSS configuration
├── next.config.ts # Next.js configuration
└── README.md # This file
- Start the Assessment: The homepage displays all 20 questions grouped by impact level
- Answer Questions: Click "Yes" or "No" for each question
- Track Progress: Monitor your progress using the progress bar at the top
- Submit: Once all questions are answered, click "Submit Assessment"
- Review Results: View your risk classification, score, and detailed results
- Export PDF: Click "Export as PDF" to download a formatted report
- Start New Assessment: Use "Start New Assessment" to reset and begin again
- Score: Your total weighted score out of 44 maximum points
- Risk Level: Your organization's governance risk classification
- Explanatory Message: Professional assessment of your governance maturity
- Question Responses: Complete list of all questions and your answers
npm run dev: Start the development servernpm run build: Build the application for productionnpm start: Start the production servernpm run lint: Run ESLint to check for code issues
If port 3000 is already in use, Next.js will automatically try the next available port (3001, 3002, etc.). Check the terminal output for the actual URL.
If you encounter module errors:
rm -rf node_modules package-lock.json
npm installIf the build fails:
- Ensure you're using Node.js 18 or higher
- Clear the
.nextdirectory:rm -rf .next - Reinstall dependencies:
npm install - Try building again:
npm run build
Important: This tool provides an indicative assessment, not a formal audit. The results should be used as a guide for internal evaluation and improvement purposes only. This tool does not provide regulatory opinions or replace professional financial advice.
This project is designed as public-interest open-source evidence and is intended to promote financial transparency and governance best practices.
If you have any questions about the Financial Governance Self-Assessment Tool or would like to share with me what you have been working on, feel free to reach out to me via:
- LinkedIn: Zunair Iqbal
- Email: zunairaiqbal01@hotmail.com