Commerce / Client project
A commerce API with the foundation in place.
A Go and PostgreSQL commerce backend covering products, categories, carts, users, and transactions, paired with an early Vue administration shell.
- Project
- CS Cloth
- My role
- Backend developer; the frontend repository was an early prototype
- Scope
- Product catalog, category management, user accounts, carts, inventory, and transaction API foundations
- Built with
- Go, Gin, PostgreSQL, Vue 3, Vite, TypeScript, Tailwind CSS
- Period
- 2022–2023 · repository activity
- Project status
- API prototype
Engineering focus
Commerce domains behind one API
Gin routes connect users, categories, products and images, measurements, payment destinations, carts, and transactions to PostgreSQL through repositories and use cases.
Backend foundation at prototype stage
The API supports registration, login, product listing, authenticated carts, and transaction flows; the companion Vue admin remains a placeholder shell.
Client project explored as a Go commerce API with a Vue administration frontend. This case study focuses on the backend because the frontend repository remained an early shell with placeholder screens; the visual is an explanatory API overview, not a screenshot of a finished product.
The full Go API history runs 2022-12-11–2023-06-02 and the Vue frontend history is 2023-07-18; these are repository dates, not delivery dates. The Go API boots in the archive capture; the Vue repository remains an early shell and current deployment or maintenance is unverified.
Model the commerce work behind the interface
CS Cloth started with the part of a commerce system that needs to stay dependable as the interface changes: accounts, product data, stock, carts, and transactions. The Go service exposes those domains through a JSON API so a web or mobile client can use the same business surface.
The API includes public registration, login, and product listing alongside authenticated cart and transaction flows. Administrative routes cover users, categories, products, stock, product details, payment destinations, measurements, and transaction review.
Keep the domains explicit
I worked on the backend foundation in Go with Gin and PostgreSQL. The code separates handlers, use cases, and repositories around the main commerce domains, which keeps the HTTP layer from carrying every persistence and business decision itself.
That structure gives a future client a clear place to add another interface. The API can support a storefront, an administration console, or a mobile client without duplicating the product and transaction rules in each one.
Show the work at the right stage
The companion Vue repository was still a starter administration shell in the archive review: it booted and built, but its screens were placeholders and it did not yet demonstrate the API workflow. I am keeping that limitation visible here rather than presenting the shell as a finished commerce product.
The diagram above shows the part of the project that can be assessed honestly today: the API boundary, the core route groups, and the PostgreSQL data domains behind them.