<commit_before># daily agenda
A Full Blown way to show a daily agenda of events.  Will probably end up using this
on a wall mounted iPad.  The display is similar to a "day view" or "single day calendar" view
you'd see in your favoriate calendar app.
of events.

![Alt text](agenda.png "A screenshot of a rendered single day calendar")

## Requirements to build (global deps)
- [node](http://nodejs.org)
- [gulp](http://gulpjs.com)

## To build
```
npm install && gulp
```

Build project is created under `dist` directory.

## Assumptions
- don't care about text getting cut off (overflow: hidden, but this could be fixed my popups, or forcing some vertical overlap for sake of readability of event information)
- visual spanning is based on columns needed in groups of clusters; there aren't sub groups inside of any groups that would make it more difficult to determine spanning
- data is correct, meaning no malformed response from a service
- not responsive (could easily change this since all positions are % based)
- "infinite" overlapping, meaning all events could overlap, thus making 100 max columns in one group (chaos?)
- ~~sort events off start time, not both start and end~~ sorting on both now
- example type of data as grokked from instructions:
```
var mock = [
    {"start": 30, "end": 150},
    {"start": 20, "end": 100},
    {"start": 540, "end": 600},
    {"start": 550, "end": 605},
    {"start": 560, "end": 620},
    {"start": 610, "end": 670},
    {"start": 310, "end": 370},
    {"start": 410, "end": 470},<commit_msg>- changed something in README<commit_after># daily agenda
A Full Blown way to show a daily agenda of events.  Will probably end up using this
on a wall mounted iPad.  The display is similar to a "day view" or "single day calendar" view
you'd see in your favoriate calendar app.
of events.

![Alt text](agenda.png "A screenshot of a rendered single day calendar")

## Requirements to build (global deps)
- [node](http://nodejs.org)
- [gulp](http://gulpjs.com)

## To build
```
npm install && gulp
```

Built package is created under `dist` directory.

## Assumptions
- don't care about text getting cut off (overflow: hidden, but this could be fixed my popups, or forcing some vertical overlap for sake of readability of event information)
- visual spanning is based on columns needed in groups of clusters; there aren't sub groups inside of any groups that would make it more difficult to determine spanning
- data is correct, meaning no malformed response from a service
- not responsive (could easily change this since all positions are % based)
- "infinite" overlapping, meaning all events could overlap, thus making 100 max columns in one group (chaos?)
- ~~sort events off start time, not both start and end~~ sorting on both now
- example type of data as grokked from instructions:
```
var mock = [
    {"start": 30, "end": 150},
    {"start": 20, "end": 100},
    {"start": 540, "end": 600},
    {"start": 550, "end": 605},
    {"start": 560, "end": 620},
    {"start": 610, "end": 670},
    {"start": 310, "end": 370},
    {"start": 410, "end": 470},
{'fraction_non_alphanumeric': 0.1132258064516129, 'fraction_numerical': 0.031612903225806455, 'mean_word_length': 4.050488599348534, 'pattern_counts': {'":': 32, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, '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': '31372', 'n_tokens_mistral': 980, 'n_tokens_neox': 856, 'n_words': 455}