// case_study / marketplace
Kram.com.ua
A Ukrainian classifieds and local discovery platform where people can publish listings, find offers in their city, message sellers and read practical editorial content.
01 / the product
One platform for local commerce.
Kram brings together listings, categories, city pages, search, filters, favorites, viewing history, conversations and editorial content. The administration area manages listings, users, articles and feedback.
The product is designed around a server-rendered Rails experience with a JSON API for the companion mobile client. This keeps the web platform fast and maintainable while allowing the mobile app to share the same core product data.
02 / technology
A focused, modern Rails stack.
- Ruby 4.0.2 and Rails 8.1 with Puma and Propshaft.
- PostgreSQL 17 as the primary database.
- Turbo, Stimulus, Tailwind CSS 4 and esbuild for the web interface.
- Solid Queue, Solid Cache and Solid Cable for background jobs, caching and real-time features.
- Active Storage with libvips for listing and article images.
- Expo and React Native for the mobile application, backed by the Rails JSON API.
- Docker, Docker Compose and a production-ready deployment setup.
03 / interface
Selected screens.



04 / result
Built to keep evolving.
Kram has a foundation for adding new categories, cities, mobile flows and content features without splitting the product into disconnected systems. The architecture supports ongoing Rails development from an early product stage through production support.