Skip to content

Commit 501f52b

Browse files
committed
- Breaking change: Rename auto-set pass_ver to passVer
- Breaking change: Rename `print` page to `users` - Security: Minimize XSS vectors by using safer jQuery methods - Enhancement: Database abstraction layer - Enhancement: Autocomplete hints - Enhancement: `localScripts` option for using non-CDN copies - Enhancement: Use native form validation - Enhancement: Make `fromText` and `fromURL` of password reset emails configurable - Enhancement: Upon signup, ask for password confirmation - Enhancement: Require email link verification code (inspired by <braitsch#11>) - Enhancement: CLI for adding accounts - Enhancement: Add `NS_EMAIL_TIMEOUT` option - Fix: Requiring of `account.js` - Fix: Pass on CLI args properly - Fix: Add proper plain text for plain text email - Accessibility: Use h1+ headings; labels; roles (passing all except for `color-contrast` whose check we are temporarily disabling until may have time to fix) - i18n: Client-side i18n - Docs: Avoid mention of MongoDB in description as Adapter could work with other dbs - Docs: Add Change log for unreleased - Docs: Indicate planned to-dos - Docs: Some further CLI documentation - Docs: Indicate license types, test results, and coverage as badges - Refactoring: Further separation of view logic out of controllers - Refactoring: Switch to Jamilih templates - Refactoring: Add scripts to head with `defer` - Refactoring: Use variables in place of selectors where possible - Linting (ESLint): As per latest ash-nazg - Testing: Add lcov report (for Atom IDE) - npm: Make scripts cross-platform - npm: Avoid Mongodb warnings by adding bind_ip flag (and add port flag for clarity) - npm: Update expresss-rate-limit, mongodb, jamilih, jsdom, and devDeps
1 parent eba1030 commit 501f52b

File tree

129 files changed

+11766
-5613
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+11766
-5613
lines changed

.editorconfig

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,3 @@ insert_final_newline = true
1010
indent_style = space
1111
indent_size = 2
1212
trim_trailing_whitespace = true
13-
14-
[app/public/css/**.styl]
15-
indent_style = tab
16-
indent_size = 2
17-
18-
[app/server/views/**.pug]
19-
indent_style = tab
20-
indent_size = 1

.eslintignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
node_modules
22
instrumented/**
33
coverage/**
4+
!.eslintrc.js
5+
!.ncurc.js
6+
mochawesome-report/**
7+
cypress/results/**

.eslintrc.js

Lines changed: 61 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,69 @@
1+
'use strict';
2+
13
module.exports = {
2-
"extends": [
3-
"ash-nazg/sauron",
4-
"plugin:node/recommended-script",
5-
"plugin:cypress/recommended"
4+
parser: 'babel-eslint',
5+
extends: [
6+
'ash-nazg/sauron',
7+
'plugin:node/recommended-script',
8+
'plugin:cypress/recommended'
9+
],
10+
env: {
11+
es6: true
12+
},
13+
settings: {
14+
polyfills: [
15+
]
16+
},
17+
globals: {
18+
Atomics: 'readonly',
19+
SharedArrayBuffer: 'readonly'
20+
},
21+
overrides: [{
22+
files: [
23+
'cypress/integration/**/*.js',
24+
'cypress/plugins/main.js',
25+
'cypress/support/**/*.js',
26+
'test/**'
627
],
7-
"plugins": [
8-
"pug"
28+
extends: [
29+
'plugin:chai-expect/recommended',
30+
'plugin:chai-friendly/recommended',
31+
'plugin:node/recommended-module'
932
],
10-
"env": {
11-
"es6": true
12-
},
13-
"settings": {
14-
"polyfills": [
15-
]
33+
rules: {
34+
'cypress/assertion-before-screenshot': ['error'],
35+
'cypress/require-data-selectors': ['error'],
36+
'cypress/no-force': ['error']
37+
}
38+
}, {
39+
files: ['test/**'],
40+
extends: [
41+
'plugin:node/recommended-module'
42+
],
43+
env: {
44+
node: true
1645
},
17-
"globals": {
18-
"Atomics": "readonly",
19-
"SharedArrayBuffer": "readonly"
46+
globals: {
47+
__dirname: true
48+
}
49+
}, {
50+
files: ['*.md'],
51+
rules: {
52+
'node/no-unsupported-features/es-syntax': 'off',
53+
'node/no-unpublished-import': 'off'
2054
},
21-
"overrides": [{
22-
files: ["cypress/integration/**/*.js"],
23-
extends: [
24-
'plugin:chai-expect/recommended',
25-
'plugin:chai-friendly/recommended'
26-
],
27-
rules: {
28-
}
29-
}, {
30-
files: [
31-
"app/public/js/views/bogus.js",
32-
"cypress/integration/unit.js",
33-
"cypress/support/index.js"
34-
],
35-
parserOptions: {
36-
"ecmaVersion": 2018,
37-
"sourceType": "module"
38-
},
39-
}, {
40-
files: ["*.md"],
41-
rules: {
42-
'node/no-unsupported-features/es-syntax': 'off',
43-
'node/no-unpublished-import': 'off'
44-
},
45-
parserOptions: {
46-
"ecmaVersion": 2018,
47-
"sourceType": "module"
48-
}
49-
}, {
50-
files: ["*.pug"],
51-
rules: {
52-
'eol-last': 0
53-
}
54-
}],
55-
"rules": {
56-
"import/no-commonjs": 0,
57-
"import/unambiguous": 0,
55+
parserOptions: {
56+
ecmaVersion: 2018,
57+
sourceType: 'module'
58+
}
59+
}],
60+
rules: {
61+
'import/no-commonjs': 0,
62+
'import/unambiguous': 0,
5863

59-
// Browser only
60-
"compat/compat": 0,
64+
// Browser only
65+
'compat/compat': 0,
6166

62-
"no-console": 0
63-
}
67+
'no-console': 0
68+
}
6469
};

.gitignore

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
.DS_Store
22
node_modules
3-
app/server/modules/email-settings-mine.js
43

54
cypress/fixtures/example.json
5+
cypress/results
66
cypress/screenshots
77
cypress/videos
88
cypress.env.json
@@ -11,3 +11,8 @@ coverage/**
1111
instrumented/**
1212
.nyc_output
1313
db
14+
15+
mochawesome-report
16+
mochawesome.json
17+
node-login.json
18+
node-login.js

.ncurc.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
'use strict';
2+
3+
module.exports = {
4+
// Whitelist all for checking besides `peer` which indicates
5+
// somewhat older versions of `eslint` we still support even
6+
// while our devDeps point to a more recent version
7+
dep: 'prod,dev,optional,bundle',
8+
reject: [
9+
// Todo[bootstrap@>4.4.1]: See if updated for css, js, and popper.js at https://github.com/twbs/bootstrap/blob/master/config.yml
10+
'bootstrap',
11+
'popper.js'
12+
]
13+
};

.npmignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,10 @@ cypress.env.json
66
coverage/**
77
.nyc_output
88
instrumented/**
9+
10+
mochawesome-report/**
11+
mochawesome.json
12+
db/**
13+
.ncurc.js
14+
node-login.json
15+
node-login.js

.pug-lintrc.js

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)