Commit Graph

61 Commits

Author SHA1 Message Date
Sam
946f25098f Refactor theme fields so they support custom theme defined vars
This paves the way to allowing themes to specify uploads and so on.
2017-05-02 16:02:14 -04:00
Sam
ba9339b8d7 FIX: missing image-url helper 2017-05-01 15:32:02 -04:00
Sam
e119c6e01e FIX: embedded comments not working when theme is missing 2017-04-20 10:31:33 -04:00
Sam
7eabb90b71 FEATURE: added error messages for bad theme CSS / JS 2017-04-19 16:46:46 -04:00
Sam
0a67d859d5 correct watcher so it handles color scheme changes correctly 2017-04-18 16:48:15 -04:00
Sam
5dd752877e FEATURE: try adding some preload hints for chrome 2017-04-17 11:52:43 -04:00
Sam
22214f5e5c Upgrade the Listen gem 2017-04-13 10:39:36 -04:00
Sam
db9a44d4b5 we need theme vars when building theme css 2017-04-12 13:37:27 -04:00
Sam
bbecc65737 force recompilation of css assets 2017-04-12 12:46:03 -04:00
Sam
8cd9afcfad move CSS precompilation to last step 2017-04-12 12:30:24 -04:00
Sam
a3e8c3cd7b FEATURE: Native theme support
This feature introduces the concept of themes. Themes are an evolution
of site customizations.

Themes introduce two very big conceptual changes:

- A theme may include other "child themes", children can include grand
children and so on.

- A theme may specify a color scheme

The change does away with the idea of "enabled" color schemes.

It also adds a bunch of big niceties like

- You can source a theme from a git repo

- History for themes is much improved

- You can only have a single enabled theme. Themes can be selected by
    users, if you opt for it.

On a technical level this change comes with a whole bunch of goodies

- All CSS is now compiled using a custom pipeline that uses libsass
    see /lib/stylesheet

- There is a single pipeline for css compilation (in the past we used
    one for customizations and another one for the rest of the app

- The stylesheet pipeline is now divorced of sprockets, there is no
   reliance on sprockets for CSS bundling

- CSS is generated with source maps everywhere (including themes) this
    makes debugging much easier

- Our "live reloader" is smarter and avoid a flash of unstyled content
   we run a file watcher in "puma" in dev so you no longer need to run
   rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00