<commit_before># BootstrapThemer

**A Reactive Bootstrap Theme Editor for Meteor**

BootstrapThemer reactively compiles [Bootstrap 3](https://github.com/twbs/bootstrap) with user-defined custom variables and delivers the CSS to clients, who will have their stylesheets updated without refreshing their browser.

The [Bootstrap Magic](https://github.com/hitchcott/meteor-bootstrap-magic) package is implemented to allow easy editing of all of Bootstrap 3's LESS variables.

BootstrapThemer comes bundled with several [Bootswatch](https://github.com/thomaspark/bootswatch/) themes.

## Quickstart

If you already use a bootstrap 3 package, remove it.

Install using `meteor add tap:bootstrap-themer`

Include the editor template somewhere in your project `{{> BootstrapThemer}}`

## Features

* Theme Presets and Switching - Includes bootstswatch themes
* On-the-fly css updates to all clients without refreshing their browser
* Super-detailed tweaking without CSS knowledge using Bootsrap variables
* Free-type custom CSS overrides
* BootstrapMagic+ Theme Editor

## Todo


```
- Custom Theme Creation and Saving
  - 'Themes' collection
  - Themes CRUD
  - Ability to 'clone' with custom vars
  - On seeding, parse themes css vars, insert them into db as themes with fields:
    - bootswatch
    - defaultVars
    - customCss
    - overrideVars
- FastRender integration
- IronRouter integration (route-based themes)
- Security for updating themes (use collection-hooks on server instead of methods, access control with regualr publish/subscribe)
- Font Uploads - TAPmedia integration
- FontAwesome Support
- Export bootswatch file
```

## License
<commit_msg>update readme with plan for theme manager<commit_after># BootstrapThemer

**A Reactive Bootstrap Theme Editor for Meteor**

BootstrapThemer reactively compiles [Bootstrap 3](https://github.com/twbs/bootstrap) with user-defined custom variables and delivers the CSS to clients, who will have their stylesheets updated without refreshing their browser.

The [Bootstrap Magic](https://github.com/hitchcott/meteor-bootstrap-magic) package is implemented to allow easy editing of all of Bootstrap 3's LESS variables.

BootstrapThemer comes bundled with several [Bootswatch](https://github.com/thomaspark/bootswatch/) themes.

## Quickstart

If you already use a bootstrap 3 package, remove it.

Install using `meteor add tap:bootstrap-themer`

Include the editor template somewhere in your project `{{> BootstrapThemer}}`

## Features

* Theme Presets and Switching - Includes bootstswatch themes
* On-the-fly css updates to all clients without refreshing their browser
* Super-detailed tweaking without CSS knowledge using Bootsrap variables
* Free-type custom CSS overrides
* BootstrapMagic+ Theme Editor

## Todo


```
- Custom Theme Creation and Saving + Routes

  - 'BootstrapThemes' collection
    - Parse all folders in /less/themes upon startup
      - Checksum the files, to see if the theme exists
      - if not, upsert:

        _id: 'theme_name'
        checksum: 'md5 of bootswatch.less + variables.less'
        defaults: {defualt_vars}

  - 'BootstrapRoutes' collection

    _id: 'main'
    theme: 'theme_name'
    ruleOverrides: Obj
    customLess: String
    compiledCss: String

    - Seed with default bootstrap if it doesn't exist

  - Add a method setting theme

  BootstrapThemer.setTheme 'myThemeName'

  - Themes CRUD
  - Ability to 'clone' with custom vars (new theme)


- FastRender integration
- IronRouter integration (route-based themes)
- Security for updating themes (use collection-hooks on server instead of methods, access control with regualr publish/subscribe)
- Font Uploads - TAPmedia integration
- FontAwesome Support
- Export bootswatch file
```

## License

{'fraction_non_alphanumeric': 0.07062899786780384, 'fraction_numerical': 0.0018656716417910447, 'mean_word_length': 4.271067415730337, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '389612', 'n_tokens_mistral': 1065, 'n_tokens_neox': 1002, 'n_words': 410}