Skip to content

Lefteris008/skill-rating-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skill Rating App

A comprehensive full-stack application for managing employee skill ratings, roles, and team performance.

Note

This is a project which has been 100% generated by Antigravity and Gemini 3 Pro models, to experiment and demonstrate their capabilities.

🚀 Overview

The Skill Rating App enables organizations to:

  • Define Skills & Roles: Create customized skill sets and assign them to specific job roles.
  • Rate Performance: Managers and employees can perform self and manager assessments using a visual 10-box rating system.
  • Analyze Gaps: Visualize skill gaps between current proficiency and target levels for specific roles.
  • Manage Teams: Managers can oversee their direct reports and track their development.
  • User Management: Users can securely manage their profiles and passwords.

🛠️ Technology Stack

Backend

  • Framework: NestJS
  • Database: SQLite (with TypeORM)
  • Authentication: JWT-based (Passport) with bcrypt for security.

Frontend

  • Framework: Angular (Standalone Components)
  • Styling: Vanilla CSS for custom, responsive designs.
  • Visualization: Custom-built heatmap and rating visualization components.

🏁 Getting Started

Prerequisites

  • Node.js (v18+)
  • npm

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd skill-rating-app
  2. Setup Backend:

    cd backend
    npm install
  3. Setup Frontend:

    cd frontend
    npm install

Running the Application

1. Start the Backend Server: The backend runs on http://localhost:3000.

cd backend
npm run start:dev

2. Start the Frontend Application: The frontend runs on http://localhost:4200.

cd frontend
npm start

🔑 Default Users

The application comes with seeded data. You can log in with the following credentials:

Note: Initial passwords match the username.

Role Username Password Access
Admin admin admin Full system access
Manager manager1 manager1 Team management & ratings
Employee employee1 employee1 Self-ratings only

📸 Screenshots

Skill Heatmap

Interactive 10-box rating system for visual skill assessment. Skill Heatmap

User Management

Secure profile updates and password management. User Management

✨ Key Features

  • Interactive Skill Heatmap: A visual, interactive 10-box rating interface (10-100 scale) replacing traditional sliders.
  • Smart Label Positioning: Rating markers (Employee, Manager, Target) intelligently adjust positions to prevent overlap.
  • Role-Based Access Control:
    • Admin: Full system access, role management, and user administration.
    • Manager: Rate subordinates, view team dashboards.
    • Employee: Self-rating and view personal progress.
  • User Management: Secure profile updates and password management with strict complexity policies.

📁 Project Structure

  • backend/: NestJS server application.
    • src/users/: User management and authentication.
    • src/skills/: Skill definitions and management.
    • src/ratings/: Rating logic and storage.
  • frontend/: Angular client application.
    • src/app/components/: Feature-specific components (e.g., skill-heatmap, manage-user).
    • src/app/services/: API integration services.

About

A comprehensive full-stack application for managing employee skill ratings, roles, and team performance.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors