









Tomps Asset General Apps
Project Overview
Tomps Asset General is an integrated mobile and web solution that streamlines asset management by categorizing company assets into three types—physical objects, buildings, and land.
Designed for efficient oversight, the platform simplifies adding, updating, and tracking assets throughout their lifecycle. The project uses a monolithic backend built with the newest
JavaScript tool Bun
for fast performance and Hono
as the HTTP framework to deliver reliable API responses.
Key Features
-
History of Used Assets:
- Records and displays the complete lifecycle of asset usage, including past usage patterns, transactions, and the operational history.
-
History of Asset Condition:
- Tracks changes in the condition of each asset, capturing updates from routine inspections and maintenance activities.
-
History of Stock Asset Condition:
- Keeps a log of the current and past status of stocked assets so that inventory quality and levels are always monitored.
-
History of Asset Book Value:
- Tracks how asset values change over time, recording depreciation or appreciation for accurate financial reporting and ROI assessment.
-
Asset Corrective Maintenance:
- Registers repairs made after asset issues or failures, ensuring quick fixes and reduced downtime.
-
Asset Preventive Maintenance:
- Schedules regular maintenance tasks to prevent failures before they happen, helping to keep assets running smoothly.
Technologies and Stack
-
Backend System:
- Built using a monolithic architecture with JavaScript runtime,
Bun
, for improved performance and efficiency. - Utilizes
Hono
as the HTTP framework, providing a fast and lightweight solution for handling API requests.
- Built using a monolithic architecture with JavaScript runtime,
-
Frontend:
- Developed with
Vue.js
, delivering a responsive and dynamic web interface tailored for robust user interactions and easy asset management.
- Developed with
-
Mobile Applications:
- Created using
React Native
, ensuring a native-like experience on both iOS and Android platforms.
- Created using
-
Unit Testing:
- Comprehensive backend testing is achieved using
Sinon
,Mocha
, andChai
, which ensure high-quality code and maintainability through test coverage.
- Comprehensive backend testing is achieved using
-
Notifications:
- Push Notifications: Implemented with the
Firebase Admin
package to deliver timely, real-time updates directly to users. - Email Notifications & Reminders: Uses
Nodemailer
, ensuring that users are promptly informed about email forgot password, maintenance reminders, and other critical updates.
- Push Notifications: Implemented with the
-
Database & Validation:
- Uses
PostgreSQL
as the main database for reliable and structured data storage with robust querying capabilities. - Uses
Zod
with TypeScript to validate input data, ensuring that all data entering the system meets company standards.
- Uses
My Role and Responsibilities
-
API Development and Design Alignment: Developed and delivered robust
RESTful APIs
that meet the exact specifications of the UI/UX designs, ensuring seamless integration for both front-end and mobile development teams. -
API Documentation: Thoroughly documented all API endpoints and usage instructions via
Postman
. -
Unit Testing Implementation: Wrote comprehensive unit tests using modern testing frameworks (such as
Mocha
,Chai
, andSinon
) to ensure high code quality and reliability. -
Push Notification Integration: Set up push notifications using the
Firebase Admin
package to deliver timely and real-time updates to users. -
Email Notification and Reminder Setup: Configured automated email notifications using
Nodemailer
to send reminders and status updates. -
Database Connectivity and Security: Connected the backend to a
PostgreSQL
database for reliable data storage and management, while implementing robust security measures. Ensured that confidential user data—such as names, emails, passwords, and phone numbers—were **encrypted following Indonesia government-mandated PII standards, safeguarding personal information effectively.
Get In Touch
For business inquiries, collaborations, or further discussion about my projects, please feel free to reach out via email at [email protected]. You can also follow my work and stay updated on the latest developments by connecting with me on GitHub, LinkedIn, and Instagram.
Stay Curious and Happy Coding !!
← Back to projects