From 20b6e6b3fffe987b42f2d2fa1215188d4450d603 Mon Sep 17 00:00:00 2001 From: Wyatt Johnson Date: Fri, 15 Mar 2019 13:15:31 -0600 Subject: [PATCH 1/6] feat: improved developer documentation --- .circleci/config.yml | 8 ++- .gitignore | 3 +- LICENSE | 2 +- README.md | 77 +++++++++++++++++++- package-lock.json | 167 ++++++++++++++++++++++++++++++++++--------- package.json | 2 + 6 files changed, 219 insertions(+), 40 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index b3fc76812..4fe959c01 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -59,8 +59,14 @@ jobs: name: Generate schemas and types command: npm run generate - run: - name: Perform linting + name: Lint Source Code command: npm run lint + - run: + name: Lint README.md + command: | + cp README.md README.md.orig + npm run doctoc + diff -q README.md README.md.orig # unit_tests will run the unit tests. unit_tests: diff --git a/.gitignore b/.gitignore index 5e57fcf6a..706e32dd0 100644 --- a/.gitignore +++ b/.gitignore @@ -13,4 +13,5 @@ coverage *.DS_STORE *.css.d.ts -__generated__ \ No newline at end of file +__generated__ +README.md.orig diff --git a/LICENSE b/LICENSE index ab232d024..2db3b1d5b 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright 2019 Mozilla Foundation +Copyright 2019 Vox Media, Inc Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/README.md b/README.md index b585e8a4f..8773e0651 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,26 @@ -# talk +# talk ![CircleCI](https://img.shields.io/circleci/project/github/coralproject/talk/next.svg) + +Online comments are broken. Our open-source commenting platform, Talk, rethinks +how moderation, comment display, and conversation function, creating the +opportunity for safer, smarter discussions around your work. +[Read more about Talk here](https://coralproject.net/talk). + +Built with <3 by The Coral Project, a part of [Vox Media](https://product.voxmedia.com/). + + + + +## Table of Contents + +- [Requirements](#requirements) +- [Running](#running) + - [Docker](#docker) + - [Source](#source) + - [Development](#development) +- [Configuration](#configuration) +- [License](#license) + + ## Requirements @@ -67,6 +89,10 @@ Talk requires NodeJS >=10, we recommend using `nvm` to help manage node versions: https://github.com/creationix/nvm. ```bash +# Clone and cd into the Talk directory. +git clone https://github.com/coralproject/talk.git +cd talk + # Install dependencies. npm install @@ -98,9 +124,53 @@ npm run start Then head on over to http://127.0.0.1:3000 to install Talk! +### Development + +Running Talk for development is very similar to installing Talk via Source as +described above. + +Talk requires NodeJS >=10, we recommend using `nvm` to help manage node +versions: https://github.com/creationix/nvm. + +```bash +# Clone and cd into the Talk directory. +git clone https://github.com/coralproject/talk.git +cd talk + +# Install dependencies. +npm install +``` + +Running Talk with default settings assumes that you have: + +- MongoDB >=3.6 running on `127.0.0.1:27017` +- Redis >=3.2 running on `127.0.0.1:6379` + +If you don't already have these databases running, you can run the following +assuming you have Docker installed on your local machine: + +```bash +docker run -d -p 27017:27017 --restart always --name mongo mongo:3.6 +docker run -d -p 6379:6379 --restart always --name redis redis:3.2 +``` + +Then start Talk with: + +```bash +# Run the server in development mode in order to facilitate auto-restarting and +# rebuilding when file changes are detected. +npm run watch +``` + +When the client code has been built, the previous command will open your web +browser to http://127.0.0.1:8080/ automatically! + ## Configuration -The following environment variables can be set to configure the Talk Server: +The following environment variables can be set to configure the Talk Server. You +can expose them in your shell via `export NODE_ENV=development` or by placing +the variables in a `.env` file in the root of the project in a simple +`NODE_ENV=development` format delimited by newlines. - `NODE_ENV` - Can be one of `production` or `development`. All production deployments should use `production`. Defaults to `production` when ran with @@ -111,7 +181,8 @@ The following environment variables can be set to configure the Talk Server: - `REDIS_URI` - The Redis database URI to connect to. (Default `redis://127.0.0.1:6379`) - `SIGNING_SECRET` - The shared secret to use to sign JSON Web Tokens (JWT) with - the selected signing algorithm. (Default: `keyboard cat`) + the selected signing algorithm. 🚨 **Don't forget to set this variable!** 🚨 + (Default: `keyboard cat`) - `SIGNING_ALGORITHM` - The signing algorithm to use for signing JWT's. (Default `HS256`). - `LOGGING_LEVEL` - The logging level that can be set to one of `fatal`, diff --git a/package-lock.json b/package-lock.json index 409b9b97f..bd6b6810e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2011,9 +2011,46 @@ "integrity": "sha512-D7VxhADdZbDJ0HjUTMnSQ5xIGb4H2yWpg8k9Sf1T08zfFiQYlaxM8LZydpR4FQ2E6LZJX8IlabNZ5io4vdChwg==", "dev": true }, + "@textlint/ast-node-types": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.2.1.tgz", + "integrity": "sha512-Pqg1LTJpF929Ovi/lCaPqlyz8yDwBFbQulC0jyQcbRAoTxYS4AZMc48Ug2yk0so5hISQXKrlAxyVBmBVl9EKGA==", + "dev": true + }, + "@textlint/markdown-to-ast": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-6.0.9.tgz", + "integrity": "sha512-hfAWBvTeUGh5t5kTn2U3uP3qOSM1BSrxzl1jF3nn0ywfZXpRBZr5yRjXnl4DzIYawCtZOshmRi/tI3/x4TE1jQ==", + "dev": true, + "requires": { + "@textlint/ast-node-types": "^4.0.3", + "debug": "^2.1.3", + "remark-frontmatter": "^1.2.0", + "remark-parse": "^5.0.0", + "structured-source": "^3.0.2", + "traverse": "^0.6.6", + "unified": "^6.1.6" + }, + "dependencies": { + "unified": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-6.2.0.tgz", + "integrity": "sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA==", + "dev": true, + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^1.1.0", + "trough": "^1.0.0", + "vfile": "^2.0.0", + "x-is-string": "^0.1.0" + } + } + } + }, "@types/accepts": { "version": "1.3.5", - "resolved": "http://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", + "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", "integrity": "sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==", "requires": { "@types/node": "*" @@ -3192,6 +3229,15 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "dev": true }, + "anchor-markdown-header": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz", + "integrity": "sha1-BFBj125qH5zTJ6V6ASaqD97Dcac=", + "dev": true, + "requires": { + "emoji-regex": "~6.1.0" + } + }, "ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", @@ -5984,6 +6030,12 @@ } } }, + "boundary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", + "integrity": "sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI=", + "dev": true + }, "bowser": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/bowser/-/bowser-1.9.4.tgz", @@ -8991,6 +9043,45 @@ "buffer-indexof": "^1.0.0" } }, + "doctoc": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/doctoc/-/doctoc-1.4.0.tgz", + "integrity": "sha512-8IAq3KdMkxhXCUF+xdZxdJxwuz8N2j25sMgqiu4U4JWluN9tRKMlAalxGASszQjlZaBprdD2YfXpL3VPWUD4eg==", + "dev": true, + "requires": { + "@textlint/markdown-to-ast": "~6.0.9", + "anchor-markdown-header": "^0.5.5", + "htmlparser2": "~3.9.2", + "minimist": "~1.2.0", + "underscore": "~1.8.3", + "update-section": "^0.3.0" + }, + "dependencies": { + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "htmlparser2": { + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", + "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^2.0.2" + } + } + } + }, "doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -11289,7 +11380,7 @@ "integrity": "sha1-ETOUSrJHeINHOZVZaIPg05z4hc8=", "dev": true, "requires": { - "intl-pluralrules": "github:projectfluent/IntlPluralRules#module" + "intl-pluralrules": "github:projectfluent/IntlPluralRules#94cb0fa1c23ad943bc5aafef43cea132fa51d68b" } }, "fluent-langneg": { @@ -11577,8 +11668,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "optional": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "aproba": { "version": "1.2.0", @@ -11599,14 +11689,12 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "optional": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -11621,20 +11709,17 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "optional": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "optional": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "optional": true + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" }, "core-util-is": { "version": "1.0.2", @@ -11751,8 +11836,7 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "optional": true + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "ini": { "version": "1.3.5", @@ -11764,7 +11848,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -11779,7 +11862,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -11787,14 +11869,12 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "optional": true + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" }, "minipass": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -11813,7 +11893,6 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "optional": true, "requires": { "minimist": "0.0.8" } @@ -11894,8 +11973,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "optional": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "object-assign": { "version": "4.1.1", @@ -11907,7 +11985,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "optional": true, "requires": { "wrappy": "1" } @@ -11993,8 +12070,7 @@ "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "optional": true + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, "safer-buffer": { "version": "2.1.2", @@ -12030,7 +12106,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -12050,7 +12125,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -12094,14 +12168,12 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "optional": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "optional": true + "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" } } }, @@ -16780,7 +16852,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -19370,7 +19442,7 @@ "dependencies": { "async": { "version": "1.5.2", - "resolved": "http://registry.npmjs.org/async/-/async-1.5.2.tgz", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", "dev": true } @@ -25584,6 +25656,15 @@ "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.1.1.tgz", "integrity": "sha1-yMPn/db7S7OjKjt1LltePjgJPr0=" }, + "structured-source": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", + "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", + "dev": true, + "requires": { + "boundary": "^1.0.1" + } + }, "style-loader": { "version": "0.23.1", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", @@ -26593,6 +26674,12 @@ "punycode": "^2.1.0" } }, + "traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", + "dev": true + }, "trim": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", @@ -27255,6 +27342,12 @@ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", "dev": true }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", + "dev": true + }, "undertaker": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.0.tgz", @@ -27592,6 +27685,12 @@ "xdg-basedir": "^3.0.0" } }, + "update-section": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/update-section/-/update-section-0.3.3.tgz", + "integrity": "sha1-RY8Xgg03gg3GDiC4bZQ5GwASMVg=", + "dev": true + }, "upper-case": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", diff --git a/package.json b/package.json index b568f1278..2f6318db0 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "build": "npm-run-all generate --parallel build:*", "build:client": "ts-node ./scripts/build.ts", "build:server": "gulp server", + "doctoc": "doctoc --title='## Table of Contents' --github README.md", "generate": "npm-run-all --parallel generate:*", "generate:css-types": "tcm src/core/client/", "generate:relay-stream": "ts-node ./scripts/compileRelay --src ./src/core/client/stream --schema tenant", @@ -215,6 +216,7 @@ "cross-spawn": "^6.0.5", "css-loader": "^1.0.1", "del": "^3.0.0", + "doctoc": "^1.4.0", "docz": "^0.5.8", "enzyme": "^3.8.0", "enzyme-adapter-react-16": "^1.7.1", From ff6cb22c2565e5b2887e7e2024e3cc36f3b8843c Mon Sep 17 00:00:00 2001 From: Kiwi Date: Mon, 18 Mar 2019 10:50:26 +0100 Subject: [PATCH 2/6] feat: add some words about testing and docz --- README.md | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8773e0651..aaa55a0b4 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,7 @@ Running Talk with default settings assumes that you have: - MongoDB >=3.6 running on `127.0.0.1:27017` - Redis >=3.2 running on `127.0.0.1:6379` -If you don't already have these databases running, you can run the following +If you don't already have these databases running, you can execute the following assuming you have Docker installed on your local machine: ```bash @@ -146,7 +146,7 @@ Running Talk with default settings assumes that you have: - MongoDB >=3.6 running on `127.0.0.1:27017` - Redis >=3.2 running on `127.0.0.1:6379` -If you don't already have these databases running, you can run the following +If you don't already have these databases running, you can execute the following assuming you have Docker installed on your local machine: ```bash @@ -163,7 +163,27 @@ npm run watch ``` When the client code has been built, the previous command will open your web -browser to http://127.0.0.1:8080/ automatically! +browser at http://127.0.0.1:8080/ automatically otherwise navigate there manually. + +To run the tests execute the following command: + +```bash +# Run our unit and integration tests. +npm run test +``` + +#### Design Language System (UI Components) + +We use [docz](https://docz.site) to document and develop our Design Language System. To start docz run: + +```bash +# Make sure CSS types ar generated. +# This is not required when `npm run watch` is already running. +npm run generate:css-types + +# Run docz in development. +npm run docz -- dev +``` ## Configuration From d9d6403cda5226d4cf109fcecc3bba68273c1b0d Mon Sep 17 00:00:00 2001 From: Kiwi Date: Mon, 18 Mar 2019 10:52:51 +0100 Subject: [PATCH 3/6] feat: add word about linters --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aaa55a0b4..991b836ba 100644 --- a/README.md +++ b/README.md @@ -165,9 +165,12 @@ npm run watch When the client code has been built, the previous command will open your web browser at http://127.0.0.1:8080/ automatically otherwise navigate there manually. -To run the tests execute the following command: +To run linting and tests use the following commands: ```bash +# Run the linters. +npm run lint + # Run our unit and integration tests. npm run test ``` From d05bece7228c66f51865ed17e2b3c5bb575c826b Mon Sep 17 00:00:00 2001 From: Kiwi Date: Mon, 18 Mar 2019 10:58:06 +0100 Subject: [PATCH 4/6] feat: add note that building might take a while --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 991b836ba..3e1044e5c 100644 --- a/README.md +++ b/README.md @@ -96,7 +96,8 @@ cd talk # Install dependencies. npm install -# Build the application dependencies. +# Build the application dependencies. +# This might take a while. npm run build ``` @@ -158,7 +159,7 @@ Then start Talk with: ```bash # Run the server in development mode in order to facilitate auto-restarting and -# rebuilding when file changes are detected. +# rebuilding when file changes are detected. This might take a while to fully run. npm run watch ``` From 547e73f0aef2146cfda1c4ddbd8587162f259d42 Mon Sep 17 00:00:00 2001 From: Chi Vinh Le Date: Mon, 18 Mar 2019 11:41:31 +0100 Subject: [PATCH 5/6] fix: update toc --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3e1044e5c..a6856bbb7 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,6 @@ Built with <3 by The Coral Project, a part of [Vox Media](https://product.voxmed - ## Table of Contents - [Requirements](#requirements) @@ -17,6 +16,7 @@ Built with <3 by The Coral Project, a part of [Vox Media](https://product.voxmed - [Docker](#docker) - [Source](#source) - [Development](#development) + - [Design Language System (UI Components)](#design-language-system-ui-components) - [Configuration](#configuration) - [License](#license) From 3bdb9e645ddeb42fc81be184bc53499495e235b3 Mon Sep 17 00:00:00 2001 From: Kiwi Date: Mon, 18 Mar 2019 16:48:43 +0100 Subject: [PATCH 6/6] fix: add docz address --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index a6856bbb7..b876f585f 100644 --- a/README.md +++ b/README.md @@ -189,6 +189,8 @@ npm run generate:css-types npm run docz -- dev ``` +After compilation has finished you can access docz at http://127.0.0.1:3030/. + ## Configuration The following environment variables can be set to configure the Talk Server. You