Sethy Rung
2025

Asset Management

Explore Now

The Asset Management System is a robust web platform designed to help organizations effectively manage and track physical assets, such as equipment, devices, and resources. It streamlines the entire asset lifecycle โ€” from registration to assignment, return, and disposal โ€” ensuring transparency and operational efficiency.


๐Ÿงพ Asset Management System


๐Ÿงฐ Tech Stack

Frontend

  • Framework: Nuxt.js (Vue 3)
  • Language: TypeScript
  • Styling: Tailwind CSS
  • State Management: Pinia
  • Routing: Nuxt File-Based Routing
  • Auth: JWT, route protection via middleware
  • Forms: Form validation with VeeValidate

Backend

  • Framework: Spring Boot
  • Language: Java (JDK 21)
  • Build Tool: Gradle
  • Database: PostgreSQL (hosted on Render)
  • ORM: Spring Data JPA
  • Security: Spring Security with JWT

โœจ Key Features

๐Ÿง‘โ€๐Ÿ’ผ For Users

  • Dashboard: Quick overview of asset counts, categories, and statuses.
  • Asset Management: Register new assets, update information, and manage asset lifecycle.
  • Assignment Tracking: Assign assets to users with detailed logs.
  • Return & Disposal: Mark assets as returned, lost, or disposed.
  • Search & Filter: Easily search and filter assets by name, type, status, or assigned user.
  • Role-Based Access: Different UI and access based on user roles (e.g., admin, employee).

๐Ÿ” Security

  • Authentication: JWT-based login with access and refresh tokens.
  • Authorization: Role-based authorization on both frontend and backend.
  • Secure APIs: Endpoint protection via Spring Security filters.

๐Ÿ‘จโ€๐Ÿ’ป My Contributions

  • Built reusable Vue components and layouts using Nuxt 3.
  • Implemented secure login and token refresh logic.
  • Designed interactive forms with validation for asset creation and updates.
  • Integrated RESTful APIs from Spring Boot backend into the Nuxt frontend.
  • Developed secure, modular backend with layered architecture in Spring Boot.
  • Connected backend with PostgreSQL on Render, and tested all endpoints with Postman.

๐Ÿง  What I Learned

  • Learned advanced backend security and JWT refresh handling with Spring Security.
  • Gained experience structuring enterprise-level Spring Boot applications.
  • Mastered Nuxt 3 composables and route middleware.
  • Implemented clean code and separation of concerns in both frontend and backend.
  • Practiced full deployment pipeline with hosted PostgreSQL on Render.

๐Ÿš€ Future Improvements

  • Add asset history logs for auditing changes and transfers.
  • Enable export to CSV or Excel for reporting.
  • Integrate notifications for assignment/return deadlines.
  • Add barcode or QR code scanning support for asset identification.