Here I propose breaking-changes to modernize the stack and optimize the use of the powerful Ruby on Rails framework version 6+. This would be best implemented in a new repo which could be called “Sharetribe Next”.
- Always use the latest version of Ruby, Rails, Node, and use Yarn instead of NPM.
- Re-Implement “Discovery” in Ruby. Replacing Thinking Sphinx with ElasticSearch, the Searchkick gem can be of great help in this matter.
- Re-implement “Harmony” availability checking in Ruby away from Clojure.
- Use the standard Webpacker gem that now ships with Rails, instead of the React on Rails gem.
- Provide an official SSO endpoint for the Discourse https://www.discourse.org open source community forum (the same one running this forum).
- Remove the Paperclip gem and implement the new official ActiveStorage system instead.
- Replace the current Mercury WYSIWYG with the new official ActionText.
- Replace the Delayed jobs gem with Sidekiq, and implement it with ActiveJobs.
- Make the payment options modular and pluggable, so that it is easier to add other providers.
Any other refactoring ideas?