Spec: Homepage instance config options - ckan/ckan GitHub Wiki

Visual

The homepage of CKAN instances should be more customizable as looking at all the instances that are running CKAN [1] there are some common modules that appear on them that aren't in CKAN core.

I would like to suggest that everything in the main content area of the homepage is tweakable and each item that appears on the page should be a module. Here's a list of possible modules and possible configuration options for these modules:

  • Carousel (as this would act as the current top left featured area). Config: Should be an list of items each with: title, description, image and URL.
  • Search (as current homepage) Config: should it show top 3/4 quick facet items by x (x being tags, resource type, etc).
  • Group Config: shows 1 group with x datasets ordered by y (y being popular, alpha, recent, tagged with, etc)
  • Organization See: Group (previous item)
  • Datasets Config: shows x datasets ordered by y (y being popular, alpha, recent, tagged with, etc)
  • Counts Config: simple counts of (all configurable): total datasets, by facets (e.g. type, format etc.)
  • Tags Config: tags with counts of useage order by x (x being total, featured, etc). [IB: I think this should be a simple tag cloud, no config with size reflecting number]/
  • Related items Config: Show x related items ordered by y (y being alpha, recent, etc)

Each module should be able to be placed in content bands and each band can have 2 different layout modes (one column at 100% and two columns at 50%). Said content bands should have a configurable background color / image.

By default the homepage should be configured like so: 2 bands (1 band with header image and 50/50 layout with carousel and search modules in each column and 1 band with blank background and 50/50 layout with a count and featured group modules)

[1] http://ckan.org/instances

Privacy & Auth

  • Set authorization access level (can people create accounts by default, can users create groups / orgs)
  • Set privacy level (whether following datasets/groups is public, whether you can see other user profiles, whether user email addresses are available).

Comments

TD: I think this is wrong. The front page should be configured by using template helper functions and 'extra features' like above should be addable via extensions. Anything else is a retrograde step in the ckan way of how things should be done. controllers need to have stuff removed not added to and the same with config options - these should be minimised - TD

JM: Perfect... I'm fine with just having so that CKAN core just has better template blocks on the homepage and then do the rest with a extension that extends the core templates. As long as the UI for changing the homepage is simple (e.g. it can be done via the sysadmin panel) - JM

IB: I think we're introducing too many config options. Lots of decisions and options for tweaking. We need to have clear defaults for each module. Does everyone want this level of customization? Worth a discussion on the lists or Roadmap card: https://trello.com/c/l7PcuY8U/13-small-fixes-to-config-options-edit-featured-groups-featured-dataset-on-homepage