diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index a4a63a3..5cbaa6d 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -93,6 +93,7 @@ def project_params
def dependencies
@projects = Project.reviewed
@dependencies = @projects.map(&:dependency_packages).flatten(1).group_by(&:itself).transform_values(&:count).sort_by{|k,v| v}.reverse.first(50)
+ @packages = Project.reviewed.select{|p| p.packages.present? }.map(&:packages).flatten(1)
end
def packages
diff --git a/app/views/projects/dependencies.html.erb b/app/views/projects/dependencies.html.erb
index 539682f..fa04486 100644
--- a/app/views/projects/dependencies.html.erb
+++ b/app/views/projects/dependencies.html.erb
@@ -22,8 +22,16 @@
<%= dependency[0] %> : <%= link_to dependency[1], "https://packages.ecosyste.ms/packages/lookup?ecosystem=#{dependency[0]}&name=#{dependency[1]}", target: :_blank %>
<%= pluralize count, 'dependent project' %>
+
+ <% package = @packages.find{|p| p['ecosystem'] == dependency[0] && p['name'] == dependency[1] } %>
+ <% if package %>
+
+ <%= link_to '(in OST)', lookup_projects_path(url: package['repository_url']), method: :post %>
+
+ <% end %>
+
<% end %>
@@ -45,6 +53,12 @@
<%= pluralize count, 'dependent project' %>
+ <% package = @packages.find{|p| p['ecosystem'] == dependency[0] && p['name'] == dependency[1] } %>
+ <% if package %>
+
+ <%= link_to '(in OST)', lookup_projects_path(url: package['repository_url']), method: :post %>
+
+ <% end %>
<% end %>
diff --git a/config/routes.rb b/config/routes.rb
index 667d2b5..3631ad3 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -37,6 +37,7 @@
resources :projects, constraints: { id: /.*/ } do
collection do
post :lookup
+ get :lookup
get :review
get :dependencies
get :packages