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
This is a test project for Mongo Atlas hackathon. It uses RailsEventStore with PostgreSQL as an event store and MongoDB on Atlas for read models.
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:
Sale view:
Offer view:
RailsEventStore dashboard (available in dev env only):
Top comments (0)