diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 00000000..31ad24c7
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,17 @@
+---
+name: Bug report
+about: Create a report to help us improve
+title: ''
+labels: ''
+assignees: ''
+
+---
+
+* version:
+* project (e.g. CLI):
+* operating system:
+
+## Description
+
+## Steps to reproduce
+
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 00000000..d06e4700
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,92 @@
+# Contributing to Dnote
+
+This repository contains the server side and the client side code for Dnote.
+
+## Set up
+
+1. Download and setup the [Go programming language](https://golang.org/dl/).
+2. Download the project
+
+```sh
+go get github.com/dnote/dnote
+```
+
+## CLI
+
+### Set up
+
+Download dependencies using [dep](https://github.com/golang/dep).
+
+```sh
+dep ensure
+```
+
+### Test
+
+Run:
+
+```sh
+./cli/scripts/test.sh
+```
+
+### Debug
+
+Run Dnote with `DNOTE_DEBUG=1` to print debugging statements.
+
+### Release
+
+* Build for all target platforms, tag, push tags
+* Release on GitHub and [Dnote Homebrew tap](https://github.com/dnote/homebrew-dnote).
+
+```sh
+VERSION=0.4.8 make release
+```
+
+* Build, without releasing, for all target platforms
+
+```sh
+VERSION=0.4.8 make
+```
+
+**Note**
+
+- If a release is not stable,
+ - disable the homebrew release by commenting out relevant code in the release script.
+ - mark release as pre-release on GitHub release
+
+## Web
+
+### Set up
+
+Download dependencies using [dep](https://github.com/golang/dep) and npm.
+
+```sh
+dep ensure
+npm install
+```
+
+### Test
+
+Run:
+
+```
+npm run test
+```
+
+## Server
+
+### Set up
+
+Download dependencies using [dep](https://github.com/golang/dep).
+
+```sh
+dep ensure
+```
+
+### Test
+
+Run:
+
+```
+./server/api/scripts/test-local.sh
+```
diff --git a/README.md b/README.md
index c76c6d6d..58c3dfff 100644
--- a/README.md
+++ b/README.md
@@ -1,39 +1,63 @@
-# Dnote
+
+=========================
-A simple notebook for developers.
+Dnote is a simple notebook for developers.
-## What It Does
+[](https://semaphoreci.com/dnote/dnote-2)
-Write technical notes and neatly organize them into books.
+## What is Dnote?
-## How to Use
+Dnote is a lightweight notebook for writing technical notes and neatly organizing them into books. The main design goal is to **keep you focused** by providing a way of swiftly capturing new information **without having to switch environment**. To that end, you can use Dnote as a command line interface, browser extension, web client, or an IDE plugin.
-You can use Dnote in a command line, web browser, or in an IDE.
+It also offers **end-to-end encrypted** backup with AES-256, and **automated spaced repetition** to retain your memory in case you are building a personal knowledge base.
-- [CLI](https://github.com/dnote/dnote/tree/master/cli)
-- [Web](https://dnote.io)
-- [Browser extension](https://github.com/dnote/browser-extension)
-- [Atom](https://github.com/dnote/dnote-atom)
+For more details, see the [download page](https://dnote.io/download) and [features](https://dnote.io/pricing).
-It is designed to minimize switching environment.
+## Quick install
-## Privacy
+The quickest way to try Dnote is to install the command line interface.
-Dnote is end-to-end encrypted with AES-256 to respect your privacy. It does not track you.
+### Install with Homebrew
-## Self-host
+On macOS, you can install using Homebrew:
-Instructions are coming soon.
+```sh
+brew tap dnote/dnote
+brew install dnote
-## User Stories
+# to upgrade to the latest version
+brew upgrade dnote
+```
+
+### Install with script
+
+You can use the installation script to install the latest version:
+
+ curl -s https://raw.githubusercontent.com/dnote/dnote/master/cli/install.sh | sh
+
+In some cases, you might need an elevated permission:
+
+ curl -s https://raw.githubusercontent.com/dnote/dnote/master/cli/install.sh | sudo sh
+
+### Install with tarball
+
+You can download the binary for your platform manually from the [releases page](https://github.com/dnote/dnote/releases).
+
+## Personal knowledge base
+
+Dnote is great for building a personal knowledge base because:
+
+* It is fully open source.
+* Your data is stored locally first and in a SQLite format which is [suitable for continued accessibility](https://www.sqlite.org/locrsf.html).
+* It provides a way of instantly capturing new lessons without distracting you.
+* It automates spaced repetition to help you retain your memory.
+
+You can read more in the following user stories:
- [How I Built a Personal Knowledge Base for Myself](https://dnote.io/blog/how-i-built-personal-knowledge-base-for-myself/)
- [I Wrote Down Everything I Learned While Programming for a Month](https://dnote.io/blog/writing-everything-i-learn-coding-for-a-month/)
-## Links
+## See Also
-- [Dnote](https://dnote.io)
-- [Dnote Pro](https://dnote.io/pricing)
+- [Homepage](https://dnote.io)
- [Forum](https://forum.dnote.io)
-
-[](https://semaphoreci.com/dnote/dnote-2)
diff --git a/assets/logo.png b/assets/logo.png
new file mode 100644
index 00000000..e446301e
Binary files /dev/null and b/assets/logo.png differ
diff --git a/cli/CONBTRIBUTING.md b/cli/CONBTRIBUTING.md
deleted file mode 100644
index ec5f3e4c..00000000
--- a/cli/CONBTRIBUTING.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# Contributing
-
-This is a guide for contributors.
-
-## Set up
-
-First, download the project
-
-```sh
-go get github.com/dnote/dnote/cli
-```
-
-Go to the project root and download dependencies using [dep](https://github.com/golang/dep).
-
-```sh
-dep ensure
-```
-
-## Test
-
-Run
-
-```sh
-./scripts/test.sh
-```
-
-## Debug
-
-Run Dnote with `DNOTE_DEBUG=1` to print debugging statements.
-
-## Release
-
-* Build for all target platforms, tag, push tags
-* Release on GitHub and [Dnote Homebrew tap](https://github.com/dnote/homebrew-dnote).
-
-```sh
-VERSION=0.4.8 make release
-```
-
-* Build, without releasing, for all target platforms
-
-```sh
-VERSION=0.4.8 make
-```
-
-**Note**
-
-- If a release is not stable,
- - disable the homebrew release by commenting out `homebrew` block in `.goreleaser.yml`
- - mark release as pre-release on GitHub release
diff --git a/web/scripts/dev.sh b/web/scripts/dev.sh
index 00c6d6e0..dd949dba 100755
--- a/web/scripts/dev.sh
+++ b/web/scripts/dev.sh
@@ -15,6 +15,7 @@ appPath="$basePath"/web
PUBLIC_PATH="$appPath"/public \
STANDALONE=true \
COMPILED_PATH="$basePath/web/compiled" \
+ IS_TEST=true \
"$appPath"/scripts/webpack-dev.sh
) &
diff --git a/web/scripts/webpack-dev.sh b/web/scripts/webpack-dev.sh
index dc61c52f..85181e04 100755
--- a/web/scripts/webpack-dev.sh
+++ b/web/scripts/webpack-dev.sh
@@ -14,6 +14,7 @@ appPath="$basePath"/web
ASSET_BASE_URL=$ASSET_BASE_URL \
COMPILED_PATH=$COMPILED_PATH \
PUBLIC_PATH=$PUBLIC_PATH \
+ IS_TEST=true \
"$appPath"/scripts/placeholder.sh &&
"$appPath"/node_modules/.bin/webpack-dev-server\
diff --git a/web/src/components/Icons/Logo.js b/web/src/components/Icons/Logo.js
index 092b1e45..25bd396a 100644
--- a/web/src/components/Icons/Logo.js
+++ b/web/src/components/Icons/Logo.js
@@ -26,23 +26,21 @@ const Icon = ({ fill, width, height, className }) => {
);
};
Icon.defaultProps = {
- fill: '#000',
+ fill: '#2a2a2a',
width: 32,
height: 32
};
diff --git a/web/src/components/Icons/LogoWithText.js b/web/src/components/Icons/LogoWithText.js
index 6101c0f8..747bd856 100644
--- a/web/src/components/Icons/LogoWithText.js
+++ b/web/src/components/Icons/LogoWithText.js
@@ -18,7 +18,7 @@
import React from 'react';
-const Icon = ({ className }) => {
+const Icon = ({ className, fill }) => {
return (