├── .gitignore ├── screenshot.png ├── LICENSE ├── style.css ├── README.md ├── index.html └── js └── tabletop.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | index.js 3 | sample-data.js 4 | -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jlord/federal-gov/HEAD/screenshot.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Jessica Lord 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /style.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: 'Source Sans Pro', 'Helvetica Neue', 'Arial', sans-serif; 3 | margin: 0; padding: 0; 4 | font-size: 1em; 5 | color: #333; 6 | background-color: #fdfdfd; 7 | } 8 | 9 | a { 10 | color: #3f6def; 11 | text-decoration: none; 12 | padding-bottom: 1px; 13 | border-bottom: 1px dotted #3f6def; 14 | } 15 | 16 | .hidden { 17 | display: none !important; 18 | } 19 | 20 | .wrapper { 21 | max-width: 980px; 22 | margin: 0 auto; 23 | padding: 20px; 24 | } 25 | 26 | .activities-list { 27 | margin: 0; padding: 0; 28 | } 29 | 30 | .activities-list li { 31 | display: inline; 32 | margin: 0; padding: 0; 33 | margin-right: 16px; 34 | padding: 8px 16px; 35 | cursor: pointer; 36 | } 37 | 38 | header { 39 | padding-bottom: 30px; 40 | } 41 | 42 | .month-title { 43 | font-size: 2em; 44 | padding-bottom: 10px; 45 | margin-bottom: 40px; 46 | border-bottom: 2px solid #333; 47 | } 48 | 49 | /* EACH ITEM ~~~~~~~~~~~~~~~~~~~ */ 50 | 51 | .item { 52 | display: inline-block; 53 | vertical-align: top; 54 | margin-bottom: 40px; 55 | padding-right: 20px; 56 | width: 300px; 57 | } 58 | 59 | .item-header { 60 | padding-bottom: 12px; 61 | } 62 | 63 | .item-header span { 64 | display: inline-block; 65 | margin-right: 8px; 66 | padding: 8px 16px; 67 | font-size: .7em; 68 | } 69 | 70 | .item-activity { 71 | text-transform: uppercase; 72 | letter-spacing: .05em; 73 | font-weight: bold; 74 | font-size: .7em; 75 | } 76 | 77 | .obstruction { 78 | background-color: #ef527e; 79 | color: #f7eef0; 80 | } 81 | 82 | .departure { 83 | background-color: #ef624b; 84 | color: #ffeeec; 85 | } 86 | 87 | .lie { 88 | background-color: #da4242; 89 | color: #f3eded; 90 | } 91 | 92 | .conflict { 93 | background-color: #ffb66c; 94 | color: #fff6ee; 95 | } 96 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # Federal Government 4 | 5 | This is a [website](https://jlord.github.io/federal-gov) generated from a [Google Spreadsheet](https://docs.google.com/spreadsheets/d/17H2IL-o2G-JAwaukZCZ0aCfL09nEthZb_EUrB3wikwY/edit#gid=0) of articles about the actions of the United States Federal Government in 2017. 6 | 7 | 8 | --- 9 | 10 | ## Why 11 | 12 | There are a lot of things happening daily as a new administration prepares to take the helm of the US Government. I see links scattered throughout my social media feeds and I wanted to try consolidating these things in a way where I (and others) might be able to see the breadth of what's going on in a simplified but informative way. 13 | 14 | ### Selection 15 | 16 | I am selecting events which challenge the way the US Government functions. Right now these are broadly categorized by what it is that made each event newsworthy: Is it an illegal conflict of interest? Is a lie? Does it intend to hinder the normal functions of the government? Is it a shocking break with convention? If the government does something good that's great, but those aren't the things to cover here. Feel free to [fork this repository and create that site](http://jlord.github.io/forkngo) if you so desire. 17 | 18 | ### Sources 19 | 20 | Right now the information is added by me to a spreadsheet manually as I read about events either through my social media feeds or directly from the publication. 21 | 22 | #### Week 1 23 | 24 | Since I'm starting this a week into the new year, I used an [existing list of events](http://textuploader.com/ddzqv) (which were [derived from this tweet](https://twitter.com/sarahkendzior/status/818547688383848449)) to cover last week. 25 | 26 | ### Presentation 27 | 28 | The way the information is presented on the site has to do with some experiments that were in my head. 29 | 30 | #### Simplify Information 31 | 32 | Similar to my [Essential Electron](http://jlord.us/essential-electron) project, I wanted to challenge myself to simplify as much as I could. Of course full articles for more in depth information is provided. 33 | 34 | #### Don't use names 35 | 36 | Rather than use proper nouns, I'm using titles or relationships. Abstracting them one level seems more like the reflection on the country as a whole and our government rather than an individual, which is interesting to me. 37 | 38 | ## Future 39 | 40 | I want to experiment with formats more (calendar? table?) and add sorting and filtering. 41 | 42 | ## Technical 43 | 44 | This site uses a band-aided version of my [sheetsee.js](https://github.com/jlord/sheetsee.js) (I am gonna be refreshing the project soon!) library and tabletop.js to visual data from a Google Spreadsheet. 45 | 46 | ### Want to use the data in your project? 47 | 48 | The data from the spreadsheet is public and accessible through this Google Spreadsheet key: `17H2IL-o2G-JAwaukZCZ0aCfL09nEthZb_EUrB3wikwY`. You can use the Google API to work with it or a library like [Tabletop.js](https://github.com/jsoma/tabletop) which will return the contents to you as nice, clean JSON. 49 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Federal Government 2017 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 |
19 |

Federal Government 2017

20 |

Summaries of events from the US Government. Submit activity!

21 |

This project and data is open source: read about the project, see the code or use the data.

22 |

Select to filter by activity

23 |
30 |
31 | 32 |
Loading...
33 | 34 | 52 | 53 | 92 | 93 | 101 | 102 | 103 | -------------------------------------------------------------------------------- /js/tabletop.js: -------------------------------------------------------------------------------- 1 | !function(){'use strict';var inNodeJS=!1;if('undefined'!=typeof process&&!process.browser){inNodeJS=!0;var request=require('request'.trim())}var supportsCORS=!1,inLegacyIE=!1;try{var testXHR=new XMLHttpRequest;'undefined'!=typeof testXHR.withCredentials?supportsCORS=!0:'XDomainRequest'in window&&(supportsCORS=!0,inLegacyIE=!0)}catch(e){}var indexOfProto=Array.prototype.indexOf,ttIndexOf=function(array,item){var i=0,l=array.length;if(indexOfProto&&array.indexOf===indexOfProto)return array.indexOf(item);for(;i1&&this.debug&&this.log('WARNING You have more than one sheet but are using simple sheet mode! Don\'t blame me when something goes wrong.'),this.models[this.modelNames[0]].all()):this.models},addWanted:function(sheet){ttIndexOf(this.wanted,sheet)===-1&&this.wanted.push(sheet)},loadSheets:function(data){var i,ilen,toLoad=[];for(this.googleSheetName=data.feed.title.$t,this.foundSheetNames=[],i=0,ilen=data.feed.entry.length;i