require "dry-struct" require_relative "../site" module Pressa module Projects class Project < Dry::Struct attribute :name, Types::String attribute :title, Types::String attribute :description, Types::String attribute :url, Types::String def github_path uri = URI.parse(url) uri.path.sub(/^\//, "") end def path "/projects/#{name}" end end end end