Back to projects

SCM system for bookstores

Jan 2024 – Jun 2024

Management (SCM) system for bookstores and stationery shops, built as freelance work with Angular and a .NET backend. Modularization and lazy loading streamlined the client's processes by 25%.

Built as two separate repositories: an Angular 18 storefront (RxJS, Angular Material, Tailwind) with a client-facing catalog, cart, checkout, purchase history and favorites, plus an admin panel for products, categories, suppliers, and user roles; and a .NET 8 REST API following a four-layer architecture (Models, Data Access, Business Logic, Presentation) documented with Swagger.

Checkout is handled transactionally: the API validates stock, creates the purchase record and its details, and decrements inventory in a single operation, keeping the sales and inventory modules in sync.

The database runs in Docker (SQL Server) with a versioned schema script and an ERD diagram, and the frontend is deployed independently, consuming the API over a configurable base URL.

Highlights

  • Inventory and sales modules over a real client domain, with deferred loading and a modular architecture.
  • Intuitive, responsive interfaces that improved UX and visual consistency.
  • Role-based admin panel (products, categories, suppliers, users) on top of a layered .NET Core 8 API with Swagger docs and EF Core over SQL Server.

Technologies

Angular
.NET
REST APIs
Lazy Loading

Links

Gallery

Add product page in the admin panel

1 / 13