{"id":31950669,"url":"https://github.com/nulltea/kicksware-platform","last_synced_at":"2026-04-29T21:01:27.349Z","repository":{"id":57536646,"uuid":"296083892","full_name":"nulltea/kicksware-platform","owner":"nulltea","description":"Microservice architecture based open-source sneaker resale web platform","archived":false,"fork":false,"pushed_at":"2021-02-11T22:49:00.000Z","size":1156,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-01-23T02:47:07.149Z","etag":null,"topics":["cloud-native","csharp","golang","javascript","kubernetes","microservices","sneakers"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nulltea.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-09-16T16:09:27.000Z","updated_at":"2024-01-23T02:47:07.150Z","dependencies_parsed_at":"2022-08-29T00:40:37.303Z","dependency_job_id":null,"html_url":"https://github.com/nulltea/kicksware-platform","commit_stats":null,"previous_names":["timoth-y/kicksware-platform","nulltea/kicksware-platform"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nulltea/kicksware-platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulltea%2Fkicksware-platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulltea%2Fkicksware-platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulltea%2Fkicksware-platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulltea%2Fkicksware-platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nulltea","download_url":"https://codeload.github.com/nulltea/kicksware-platform/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulltea%2Fkicksware-platform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018593,"owners_count":26086579,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-native","csharp","golang","javascript","kubernetes","microservices","sneakers"],"created_at":"2025-10-14T12:45:28.186Z","updated_at":"2025-10-14T12:45:33.588Z","avatar_url":"https://github.com/nulltea.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# [![Kicksware logo][]][Kicksware url]\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://www.kicksware.com\"\u003e\n\t\t\u003cimg src=\"https://img.shields.io/website?label=Visit%20website\u0026down_message=unavailable\u0026up_color=teal\u0026up_message=kicksware.com%20%7C%20online\u0026url=https%3A%2F%2Fhealth.kicksware.com/ready\"\u003e\n\t\u003c/a\u003e\n\u003c/p\u003e\n\n[![golang badge]](https://golang.org)\u0026nbsp;\n[![c# badge]](https://dotnet.microsoft.com/apps/aspnet)\u0026nbsp;\n[![js badge]](https://jamstack.org)\u0026ensp;\n[![kubernetes badge]](https://kubernetes.io)\u0026nbsp;\n[![architecture badge]][microservice article]\u0026ensp;\n[![license badge]](https://www.gnu.org/licenses/agpl-3.0)\n\n[![api pipeline]](https://ci.kicksware.com/kicksware/api/-/commits/master)\u0026nbsp;\n[![web-app pipeline]](https://ci.kicksware.com/kicksware/web-app/-/commits/master)\u0026nbsp;\n[![gitlab badge]](https://ci.kicksware.com/kicksware/kicksware-platform)\u0026nbsp;\n[![gateway pipeline]](https://ci.kicksware.com/kicksware/gateway/-/commits/master)\u0026nbsp;\n[![tool-stack pipeline]](https://ci.kicksware.com/kicksware/tool-stack/-/commits/master)\u0026nbsp;\n\n## Overview\n\n_**Kicksware**_ is an all-in-one modular end-to-end open-source platform designed by and for the sneakerheads around the globe as part of the luxury fashion worldwide ecosystem.\n\nIt's designed to provide opportunity, place and services not only to a passionate buyer or a prosperous seller, but those who encourage authenticity, sustain individuality, and seeking like-minded personalities for further cooperation and collaboration.\n\nIts goal is to support use of modern technology in today`s fashion industry and help to build better, more comfortable, more authentic and more creative ecosystem.\n\n## Table of contents\n\n* [Overview](#overview)\n* [Table of contents](#table-of-contents)\n* [Components](#components)\n* [Architecture](#architecture)\n* [Infrastructure](#infrastructure)\n* [Wrap Up](#wrap-up)\n* [License](#license)\n\n## Components\n\nAs it was designed as a distributed microservice system _**Kicksware**_ consists of 4 main components, each having its own dedicated project:\n\n* [**API** - microservices registry, which collectively represents application business-logic, written in Go][api repo]\n* [**Web App** - frontend web application which enables users to interact with business-logic via the stylish user interface][web-app repo]\n* [**Gateway** - cloud-native reverse proxy and load balancer service based on][gateway repo] [Traefik][traefik repo]\n* [**Tool Stack** - complex of additional technologies, services, and databases configured to be a part of Kicksware infrastructure][tool-stack repo]\n\nTogether, these components make up a complete software infrastructure designed with scalability in mind, therefore it can handle a constantly growing audience and volatile market conditions\n\n## Architecture\n\nKicksware system design is based on _[**microservice architecture**][microservice article] pattern_ which takes an approach for developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.\n\nThis particular approach was originally chosen for research and self educational purposes and afterwards my passion for sneakers was used as the soul of a future product. And by all means, this isn't the right way of choosing an architectural design for the upcoming system. Product purpose, budget, team size, need in scalability, market condition and even more factors should be considered while choosing a software architecture pattern.\n\nAs for this particular project, the main goal was to reverse engineer this process and build the system that would be the best possible fit for the approach of microservices.\n\n## Infrastructure\n\nIn order to _deploy_, _maintain_ and be able to effectively _scale_ distributed microservice system such as Kicksware, an organized and well-thought infrastructure is required.\n\n**Cloud infrastructure** is a set of components needed for cloud computing, which includes hardware, software, storage, and network resources as well as relation between them. It also includes a hardware abstraction layer that enables the virtualization of resources and helps to drive down costs through economies of scale.\n\nGenerally, modern [**cloud-native**][cloud-native] applications are built as a set of services that run in _Docker containers_, and may be orchestrated in _Kubernetes_ and managed and deployed using _DevOps_ and _Git CI_ workflows. This project is no exception as it is also taking advantage of continuous deployment to the Kubernetes cluster triggered by Gitlab CI\\CD system.\n\nIn terms of scalability, Kicksware is relying on Kubernetes [_Horizontal Pod Autoscaler (HPA)_][k8s hpa] feature and [_Cluster Autoscaler_][digitalocean-vna] provided by _DigitalOcean_.\n\nThe following diagram visually represents Kicksware's cloud infrastructure components and relation between them:\n[![kicksware infrastructure][]][kicksware-cloudcraft]\n\n## Wrap Up\n\n_**Kicksware**_ is a _noncommercial, research project_ dedicated to be a playground for learning and practicing modern cloud technologies, languages, patterns, and architectures.\n\nAnd although there aren't any future plans to make a profit from Kicksware as a real-world sneaker resale shop, this isn't the final stop for this project.\n\nKicksware will continue to exist and adopt new technologies as the time passes by as well as stay open-source.\n\nFeel free to contribute your code and ideas. Please make sure to read the Contributing Guide before making a pull request.\n\n## License\n\nLicensed under the [GNU AGPL-3.0][license file].\n\n[kicksware logo]: https://raw.githubusercontent.com/timoth-y/kicksware-platform/master/assets/repo-logo.png\n[kicksware url]: https://www.kicksware.com\n\n[api repo]: https://github.com/timoth-y/kicksware-api\n[web-app repo]: https://github.com/timoth-y/kicksware-web-app\n[gateway repo]: https://github.com/timoth-y/kicksware-gateway\n[tool-stack repo]: https://github.com/timoth-y/kicksware-tool-stack\n\n[Website badge]: https://img.shields.io/website?label=Visit%20website\u0026down_message=unavailable\u0026up_color=teal\u0026up_message=kicksware.com%20%7C%20online\u0026url=https%3A%2F%2Fkicksware.com\n[golang badge]: https://img.shields.io/badge/Code-Golang-informational?style=flat\u0026logo=go\u0026logoColor=white\u0026color=6AD7E5\n[c# badge]: https://img.shields.io/badge/Code-C%23-informational?style=flat\u0026logo=c-sharp\u0026logoColor=white\u0026color=1E9E25\n[js badge]: https://img.shields.io/badge/Code-JavaScript-informational?style=flat\u0026logo=javascript\u0026logoColor=white\u0026color=F7E018\n[license badge]: https://img.shields.io/badge/License-AGPL%20v3-blue.svg?color=teal\n[architecture badge]: https://img.shields.io/badge/Architecture-Microservices-informational?style=flat\u0026logo=opslevel\u0026logoColor=white\u0026color=teal\n[kubernetes badge]: https://img.shields.io/badge/DevOps-Kubernetes-informational?style=flat\u0026logo=kubernetes\u0026logoColor=white\u0026color=316DE6\n[gitlab badge]: https://img.shields.io/badge/CI-Gitlab_CE-informational?style=flat\u0026logo=gitlab\u0026logoColor=white\u0026color=FCA326\n\n[api pipeline]: https://ci.kicksware.com/kicksware/api/badges/master/pipeline.svg?key_text=API%20|%20pipeline\u0026key_width=85\n[web-app pipeline]: https://ci.kicksware.com/kicksware/web-app/badges/master/pipeline.svg?key_text=Web%20App%20|%20pipeline\u0026key_width=115\n[gateway pipeline]: https://ci.kicksware.com/kicksware/gateway/badges/master/pipeline.svg?key_text=Gateway%20|%20pipeline\u0026key_width=115\n[tool-stack pipeline]: https://ci.kicksware.com/kicksware/tool-stack/badges/master/pipeline.svg?key_text=Tool%20Stack%20|%20pipeline\u0026key_width=125\n\n[traefik repo]: https://github.com/traefik/traefik/blob/master/README.md\n[microservice article]: https://martinfowler.com/articles/microservices.html\n\n[kicksware infrastructure]: https://raw.githubusercontent.com/timoth-y/kicksware-platform/master/assets/kicksware-infrastructure.png\n[kicksware-cloudcraft]: https://app.cloudcraft.co/view/06c423b0-2024-47da-a929-135244424429?key=0JqqeWiD_Jx4skCCQIvLFA\n[cloud-native]: https://www.cncf.io/\n[k8s hpa]: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/\n[digitalocean-vna]: https://www.digitalocean.com/docs/kubernetes/how-to/autoscale/\n\n[license file]: https://github.com/timoth-y/kicksware-platform/blob/master/LICENSE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnulltea%2Fkicksware-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnulltea%2Fkicksware-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnulltea%2Fkicksware-platform/lists"}