Skip to content

Commit

Permalink
New Boilerplate
Browse files Browse the repository at this point in the history
This is a lot of changes to bring the old Hydrator code into using a
simpler (and hopefully easier to maintain) boilerplate:

https://github.com/jschr/electron-react-redux-boilerplate

The big changes are we're using yarn now, and webpack is not part of the
build at all.
  • Loading branch information
edsu committed Apr 17, 2020
1 parent b4533cd commit 3dfa7bc
Show file tree
Hide file tree
Showing 65 changed files with 10,522 additions and 166 deletions.
27 changes: 0 additions & 27 deletions .babelrc

This file was deleted.

58 changes: 7 additions & 51 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,53 +1,9 @@
# Logs
logs
*.log

# Runtime data
pids
*.pid
*.seed

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release
.eslintcache

# Dependency directory
# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
node_modules
app/node_modules

# OSX
.DS_Store

# flow-typed
flow-typed/npm/*
!flow-typed/npm/module_vx.x.x.js

# App packaged
release
app/main.prod.js
app/main.prod.js.map
app/renderer.prod.js
app/renderer.prod.js.map
app/style.css
app/style.css.map
build
cache
lib
dist
dll
main.js
main.js.map

.idea
npm-debug.log.*
__snapshots__
webpack.*.js
server.js
build.js
init.js
64 changes: 26 additions & 38 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -1,49 +1,37 @@
{
"root": true,
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"prettier"
],
"parser": "babel-eslint",
"parserOptions": {
"sourceType": "module",
"allowImportExportEverywhere": true
},
"extends": "airbnb",
"env": {
"browser": true,
"node": true
"ecmaFeatures": {
"jsx": true,
"modules": true
}
},
"plugins": [ "react" ],
"rules": {
"arrow-parens": ["off"],
"compat/compat": "error",
"consistent-return": "off",
"comma-dangle": "off",
"generator-star-spacing": "off",
"import/no-unresolved": "error",
"import/no-extraneous-dependencies": "off",
"jsx-a11y/anchor-is-valid": "off",
"prefer-const": "warn",
"no-console": "off",
"no-use-before-define": "off",
"no-multi-assign": "off",
"promise/param-names": "error",
"promise/always-return": "error",
"promise/catch-or-return": "error",
"promise/no-native": "off",
"react/sort-comp": ["error", {
"order": ["type-annotations", "static-methods", "lifecycle", "everything-else", "render"]
}],
"react/jsx-no-bind": "off",
"react/jsx-filename-extension": ["error", { "extensions": [".js", ".jsx"] }],
"react/prefer-stateless-function": "off"
"no-loop-func": "warn",
"new-cap": "off",
"no-param-reassign": "warn",
"func-names": "off",
"no-unused-expressions" : "error",
"block-scoped-var": "error",
"react/prop-types": "off"
},
"plugins": [
"flowtype",
"import",
"promise",
"compat",
"react"
],
"settings": {
"import/resolver": {
"webpack": {
"config": "webpack.config.eslint.js"
}
"react": {
"pragma": "React",
"version": "16.2"
}
},
"env": {
"es6": true,
"node": true
}
}
30 changes: 30 additions & 0 deletions .github/workflow/electron.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: CI

on:
push:
branches:
- master

jobs:
mac:
runs-on: macOS-latest
steps:
- uses: actions/checkout@master
with:
ref: master
- uses: actions/setup-node@master
with:
node-version: 12.16
- name: see-directory
run: ls
win:
runs-on: windows-2016
steps:
- uses: actions/checkout@master
with:
ref: master
- uses: actions/setup-node@master
with:
node-version: 12.16
- name: see-directory
run: ls
54 changes: 4 additions & 50 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,52 +1,6 @@
# Logs
logs
*.log

# Runtime data
pids
*.pid
*.seed

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release
.eslintcache

# Dependency directory
# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
node_modules
app/node_modules

# OSX
.DS_Store

# flow-typed
flow-typed/npm/*
!flow-typed/npm/module_vx.x.x.js

# App packaged
release
app/main.prod.js
app/main.prod.js.map
app/renderer.prod.js
app/renderer.prod.js.map
app/style.css
app/style.css.map
dist
dll
main.js
main.js.map

.idea
npm-debug.log.*
build
.DS_Store
*.log
.vscode
10 changes: 10 additions & 0 deletions .prettierrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# .prettierrc.yml
# see: https://prettier.io/docs/en/options.html
printWidth: 100
semi: true
singleQuote: true
trailingComma: all
bracketSpacing: true
jsxBracketSameLine: true
arrowParens: always
proseWrap: always
61 changes: 61 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<img width="800" src="https://raw.githubusercontent.com/docnow/hydrator/master/images/screencap.png"
/>

Hydrator is an [Electron] based desktop application for [hydrating] Twitter ID
datasets. Twitter's Terms of Service do not allow the full JSON for datasets of
tweets to be distributed to third parties. However they do allow datasets of
tweet IDs to be shared. Hydrator helps you turn these tweet IDs back into JSON
and also CSV from the comfort of your desktop.

If you are interested in learning more please join the DocNow community in
[Slack], or add an issue ticket here. If you would like to explore tweet
identifier datasets please see the [DocNow
Catalog](https://www.docnow.io/catalog/) and GWU's
[TweetSets](https://tweetsets.library.gwu.edu/).

## Install

Please see the list of available
[releases](https://github.com/DocNow/hydrator/releases) for OS X, Windows and
Linux installers.

**Note for OS X Users**

Since the Hydrator has not been
[signed](https://developer.apple.com/developer-id/) (which requires us to pay
Apple in order to register as a developer) your initial start up of the Hydrator
will be prevented. You can convince OS X to open it anyway by locating the
Hydrator app in your *Applications* folder, control-clicking on it, selecting
and then clicking *Open* (see the screenshot below). From this point on your
Hydrator should start normally.

<img width="800" src="https://raw.githubusercontent.com/docnow/hydrator/master/images/osx-open.png">

## Develop

Get it:

git clone https://github.com/docnow/hydrator
cd hydrator

Install:

yarn install

Start a hot-swappable development server:

yarn run develop

Alternatively, create installers for OS X, Windows and Linux:

yarn run pack:mac
yarn run pack:win
yarn run pack:linux

Hydrator was created using [electron-react-redux-boilerplatee] so check out that
documentation for more information about commands that are available.

[Electron]: http://electron.atom.io/
[Slack]: https://docnowteam.slack.com
[electron-react-redux-boilerplate]: https://github.com/jschr/electron-react-redux-boilerplate
[hydrating]: https://medium.com/on-archivy/on-forgetting-e01a2b95272#.lrkof12q5
Loading

0 comments on commit 3dfa7bc

Please sign in to comment.