CyberVault

CyberVault is a full-stack banking management platform designed to handle customer accounts, financial transactions, profile management, and employee and user administration through role-specific interfaces. Built with Next.js and a dedicated Node.js/Express REST API backed by MySQL, the system combines structured business logic with authentication, role-based authorization, token security, input validation, and audit logging.

Project Image

Technologies Used

Next.jsTypeScriptNextAuthReact Hook FormZodTailwind CSSNode.jsExpressSequelizeNodemailerArgon2express-rate-limitVercel (planned)AWS (planned)

Project Overview

CyberVault is a full-stack banking and financial management system that combines customer banking services with internal bank administration. It supports three main roles: customers, employees, and administrators. Customers can manage their profiles, view account details and balances, and review transaction history. Employees can search for customers and manage their information according to their permissions. Administrators can manage employees and users, unlock accounts, and access administrative dashboards. Each role has its own interface and navigation. The frontend uses Next.js, React, and TypeScript, while a separate Node.js/Express backend provides a versioned REST API. Next.js API routes connect the frontend to the backend and handle request forwarding, authentication data, cookies, and responses. The backend is organized into routes, controllers, services, repositories, Sequelize models, validation, middleware, and utilities. This structure keeps responsibilities clear while supporting account management, transaction workflows, role-based administration, and layered security.

Key Features

Secure Authentication

Authentication and authorization concepts protect access to user, employee, and administrator areas.

Role-based Experiences

Separate areas and navigation keep each role focused on its relevant banking responsibilities.

Banking Workflows

User-facing transaction functionality supports core banking workflows within the application.

Attack Mitigation

Security measures are implemented to mitigate common web application attacks and vulnerabilities.

User & Employee Management

Administrators can manage user and employee accounts, including role assignments and access control.

Deployment and Infrastructure

The application is deployed on a cloud platform with a real domain name and SSL certificate.

Screenshots

CyberVault Admin Dashboard Screenshot

Admin Dashboard

CyberVault Admin Dashboard shows the administrative interface for managing the application.

CyberVault Login Screenshot

Login

CyberVault Login page allows users to authenticate and access their accounts.

CyberVault User Home Screenshot

User Home

CyberVault User Home page provides users with an overview of their account and recent activities.

CyberVault Employee Home Screenshot

Employee Home

CyberVault Employee Home page provides employees with tools and information to manage user accounts and transactions.

CyberVault User Transactions Screenshot

User Transactions

CyberVault User Transactions page allows users to view and manage their financial transactions.

CyberVault Admin Home Screenshot

Admin Home

CyberVault Admin Home page provides administrators with an overview of the system and key metrics.

Challenges and Solutions

Challenges
  • Representing different responsibilities without making the banking experience difficult to navigate.
  • Protecting access to areas that contain account and transaction information.
  • Keeping the web application's responsibilities separate from the wider network and infrastructure work.
Solutions
  • Organized the application around user, employee, and administrator areas with role-specific navigation.
  • Applied authentication and role-based access concepts to protected application areas.
  • Kept the frontend and backend API scope distinct from the graduation project's broader network and infrastructure component.