DEV Community

Paweł Świątkowski
Paweł Świątkowski

Posted on

2

Yard Sale - event-driven e-commerce

Overview of My Submission

Yard Sale was an idea of old to enable people to list things they have for sale and let them manage the list. I used the opportunity of the hackathon to play with a few technologies and patterns I did not know well enough, so the project is more technical than visually appealing.

These technologies were:

  • Event sourcing - I had previous experience, but I wanted to do it with available libraries, not home-baked solution
  • Specific read models generated from events and optimized for read (these are in MongoDB in this case, while event store is PostgreSQL)
  • Rails 7 on Ruby 3.1 with Hotwire
  • TailwindCSS for server-side rendered content (spoiler: oit's rather not worth it)
  • SDLand for seeds (see my post about seeds-driven development)

Demo: https://yard-sale-dev.herokuapp.com/

Submission Category:

E-Commerce Creation

Link to Code




Additional Resources / Info

Open source used:

  • Ruby on Rails 7 with Hotwire on Ruby 3.1
  • RailsEventStore with PostgreSQL as event store
  • Mongo driver (as Mongoid is not ready for Rails 7, but it's a good thing, because it forced me to use repositories)
  • TailwindCSS with style inspired by:
  • dry-rb

Screenshots

Home page:

Home page of YardSale

Sale view:

Sale view with offers

Offer view:

Single offer view

RailsEventStore dashboard (available in dev env only):

Image description

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more →

Top comments (0)

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up