All projects
Completed

ICT Inventory & Reporting System

Web-based inventory management and reporting system with a custom report page, built with PHP/MySQL and deployed via XAMPP with LAN access for multi-device use. Full-stack inventory system with barcode/QR lookup, custom item categories, and automated status-history reporting for IT assets.

Client
Personal project
Duration
2 weeks

Built with

  • PHP
  • MySQL
  • JavaScript
  • XAMPP

The problem it solves

IT equipment such as laptops, network switches and handheld devices is usually tracked in a spreadsheet that only shows its current state. Once a status is overwritten, the history is gone, so simple questions like 'how many months has this laptop been under repair?' can't be answered without someone's memory.

Who it's for

IT teams, schools and offices that lend out, maintain or audit equipment and want a shared record without paying for a cloud system.

What it does

  • Search and scan

    Find any asset by ID, serial number, name or type, by typing or by scanning its barcode or QR code with a USB scanner or a device camera.

  • Register one or many

    Add a single item or a batch, such as ten laptops of the same model. With a scanner, each scan jumps straight to the next serial-number field.

  • Status with full history

    Every item has a status (Available, In Use, Damaged, Under Repair, Retired or any custom one). Each change is logged with the time and an optional note, never overwritten.

  • Per-item reports

    Each item gets a report with its full status timeline and a month-by-month breakdown worked out from that history.

  • Bulk updates

    Change the status of several items in one action while each keeps its own history.

  • Your own categories

    Staff can add new item types and statuses, such as 'Printer' or 'Lost', from the screen, with no code or database change.

  • Shared on the office network

    One PC runs the server; every other device just opens a browser. Nothing to install on each computer and no cloud subscription.

How it works

6 steps

  1. 01Search the inventory

    The search screen: type or scan an ID, serial number, name or type to find an asset.

  2. 02Look up a single item

    A single item with its details and current status, ready to update.

  3. 03Search by type or name

    Searching by type or name lists every match, so a whole category can be checked at once.

  4. 04Add one or many items

    Adding items: one at a time or in bulk, with the scanner moving from one serial-number field to the next by itself.

  5. 05Bulk status update

    Several items updated in one go, for example equipment damaged in the same incident. Each still gets its own history entry.

  6. 06Per-item status report

    An item's report: every status change in order, plus the month-by-month summary built from it.

How it's built

  • Plain PHP with no framework, using prepared statements for every database query, on MySQL. The front end is plain JavaScript, HTML and CSS, and it runs on XAMPP inside the local network.
  • Item types and statuses are stored as data rather than fixed in code, so adding a new one is just a new row.
  • Status history is append-only: the current status sits on the item, and every change goes to a separate log. Reports are worked out from that log, so they can't drift out of date.
  • Bulk actions run inside a single database transaction: if one row fails, such as a duplicate serial number, nothing in the batch is half-saved.
  • Barcode scanners work without any special driver: a USB scanner types like a fast keyboard, and the app is built around that.

What this shows I can build

  • Web apps and systems

    Built for how your business runs, like inventory, booking and reporting, usable from any device.

More projects

Want something like this built?

Tell me what your business needs and I'll suggest the simplest way to build it.

Get in touch