1
0
Fork 0
mirror of synced 2024-12-21 22:21:08 -05:00

Add initial site content

This commit is contained in:
Tim Byrne 2016-09-06 22:19:16 -05:00
parent f9942449f4
commit 443e3d8f04
No known key found for this signature in database
GPG key ID: 6CBE24C2FD8CF76E
53 changed files with 665 additions and 4 deletions

3
_config.dev.yml Normal file
View file

@ -0,0 +1,3 @@
url: http://localhost:4000
analytics:
provider: false

View file

@ -24,8 +24,8 @@ docs:
url: /docs/install
- title: "Getting Started"
url: /docs/getting_started
- title: "Common Usage Patterns"
url: /docs/common_usage
- title: "Common Commands"
url: /docs/common_commands
- title: Advanced Features
children:
- title: "Alternate Files"

40
_docs/010_overview.md Normal file
View file

@ -0,0 +1,40 @@
---
title: "Overview"
permalink: /docs/overview
---
> You've spent time tweaking your computing environment. Everything operates the
way you want. That's fantastic! Then your hard drive fails, and the computer
needs to be rebuilt. **yadm** can restore you configurations.
> You get a new computer, and you want to recreate that environment. You
probably want to keep both machines' configurations in sync. **yadm** can help
you coordinate the configurations between your machines.
> You begin experimenting with new changes to your configurations, and now
everything is broken. **yadm** can help you determine what changed or simply
revert all of your changes.
**yadm** is like having a version of Git, that only operates on your dotfiles.
If you know how to use Git, you already know how to use yadm.
* It doesn't matter if your current directory is another Git-managed repository
* You don't have to move your dotfiles, or have them symlinked from another
location.
* **yadm** automatically inherits all of Git's features, allowing you to branch,
merge, rebase, use submodules, etc.
As so many others, I started out with a repository of dotfiles and a few scripts
to symbolically link them around my home directory. This quickly became
inadequate and I looked for solutions elsewhere. I've tried other tools, but I
didn't find all of the features I personally wished for in a single tool. This
led to **yadm** being written with the following goals:
* Use a single repository
* Few dependencies
* Ability to use alternate files based on OS or host
* Ability to encrypt and track confidential files
* Stay out of the way and let Git do what it's good at
Follow these links to [install](install) **yadm**
or
learn some simple steps for [getting started](getting_started) with **yadm**.

57
_docs/020_install.md Normal file
View file

@ -0,0 +1,57 @@
---
title: "Installation"
permalink: /docs/install
---
{% include toc title="Platforms" %}
## OSX
**yadm** can be installed using [Homebrew](https://github.com/Homebrew/homebrew).
```
brew install yadm
```
## Fedora/Red Hat/ CentOS (YUM/RPM)
Several yum repositories are on Copr. Follow this link for [repositories and installation instructions](https://copr.fedorainfracloud.org/coprs/thelocehiliosan/yadm/).
## Debian / Ubuntu
**yadm** is currently in the "testing" release of Debian. If you are using the "stable" release, you can still install **yadm** using the following process.
* First, add the following to `/etc/apt/sources.list`
```
deb http://ftp.debian.org/debian testing main contrib non-free
```
* Next, run `apt-get update -y`
* Last, run `apt-get -t testing install yadm`
If you are using the "unstable" or "testing" release of Debian, you should be able to install **yadm** as you normally install software with `apt-get`.
## Arch Linux
**yadm** is available in the Arch User Repos and can be installed with AUR helper or Makepkg
```
yaourt -S yadm
```
## Gentoo Linux
**yadm** is available in the main gentoo portage tree, simply use `emerge` to install it
```
emerge -atv app-admin/yadm
```
## Other
You *can* simply download the **yadm** script and put it into your `$PATH`. Something like this:
```
curl -fLo /usr/local/bin/yadm https://github.com/TheLocehiliosan/yadm/raw/master/yadm && chmod a+x /usr/local/bin/yadm
```

View file

@ -0,0 +1,35 @@
---
title: "Getting Started"
permalink: /docs/getting_started
---
Starting out with **yadm** should be just a few easy steps.
### If you don't currently have a repository
Start out with an empty local repository
yadm init
yadm add <important file>
yadm commit
Eventually you will want to push the local repo to a remote.
yadm remote add origin <url>
yadm push -u origin master
### If you have an existing remote repository
Clone your existing repo using **yadm**.
yadm clone <url>
yadm status
The `clone` command will attempt to `merge` your existing repository, but if it
fails, it will do a `reset` instead and you'll have to decide best on how
resolve the differences. See
[this question](faq#i-just-cloned-my-repository-but-yadm-status-shows-conflicts-why)
in the FAQ if you need help.
---
That's all it takes to start. Now most Git commands can be used as
`yadm <git command>`.
Read about [common commands](common_commands) for ideas.

64
_docs/035_common_usage.md Normal file
View file

@ -0,0 +1,64 @@
---
title: "Common Commands"
permalink: /docs/common_commands
---
Most of these operations will look like Git commands; because they are.
**yadm** wraps Git, allowing it to perform all of Git's operations. The
difference is your `$HOME` directory becomes the working directory, and you can
run the commands from any directory.
Commands below which are special to **yadm** are denoted with
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i>,
and those which are passed directly through to Git are denoted with
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i>.
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i> `man yadm`
: Display **yadm**'s
[manual](https://github.com/TheLocehiliosan/yadm/blob/master/yadm.md).
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm status`
: Show the repository status; added, changed, removed files. Because a `$HOME`
directory often more than only dotfiles, by default
**yadm** ignores untracked files when displaying status.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm push`, `yadm fetch`
: Send or retrive commits to/from your remote repository .
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm commit --amend`
: Replace the last commit with a new one. Allows you to change your commit
message or add staged changes to the previous commit.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm diff`
: View changes (uncommitted) you've made to your dotfiles.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm diff --cached`
: View changes staged with `yadm add`. These changes will be added with the next
commit.
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i> `yadm list -a`
: Print a list of files managed by **yadm**. The -a option will cause all managed
files to be listed. Otherwise, the list will only include files from the
current directory or below.
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i> `yadm alt`
: Create symbolic links for any managed files matching the alternate naming rules.
Read about [alternate files](alternates) for more details.
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i> `yadm encrypt`
: Encrypt all files matching the patterns found in `$HOME/.yadm/encrypt`. Read
about [encryption](encryption) for more details.
<i class="fa fa-fw fa-asterisk" aria-hidden="true"></i> `yadm decrypt`, `yadm decrypt -l`
: Decrypt files stored in `$HOME/.yadm/files.gpg`. Using the `-l` option will
only list the files (without decrypting them). Read about
[encryption](encryption) for more details.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm remote -v`
: Display detailed information about all configured remote repositories.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm checkout -- <file>`
: Abandon local changes to `<file>`, replacing it with the `HEAD` revision of
`<file>`.
<i class="fa fa-fw fa-git-square" aria-hidden="true"></i> `yadm checkout -b <branch-name>`
: Create a branch called `<branch-name>`, and check the branch out.

126
_docs/040_alternates.md Normal file
View file

@ -0,0 +1,126 @@
---
title: "Alternate Files"
permalink: /docs/alternates
---
When possible, it is best to use the same files across all systems. However,
there are occasions when you need different files in some places. Below are
features and strategies for dealing with those occasions.
## Symlink alternates
It can be useful to have an automated way of choosing an alternate version of a
file for a different operation system, host, or user. **yadm** implements a
feature which will automatically create a symbolic link to the appropriate
version of a file, as long as you follow a specific naming convention. yadm can
detect files with names ending in:
| `##` | Default file linked |
| `##OS` | Matching OS |
| `##OS.HOSTNAME` | Matching OS & Hostname |
| `##OS.HOSTNAME.USER` | Matching OS, Hostname, and User |
If there are any files managed by yadm's repository which match this naming
convention, symbolic links will be created for the most appropriate version.
This may best be demonstrated by example. Assume the following files are managed
by yadm's repository:
$HOME/path/example.txt##
$HOME/path/example.txt##Darwin
$HOME/path/example.txt##Darwin.host1
$HOME/path/example.txt##Darwin.host2
$HOME/path/example.txt##Linux
$HOME/path/example.txt##Linux.host1
$HOME/path/example.txt##Linux.host2
If running on a Macbook named `host2`, yadm will create a symbolic link which
looks like this:
`$HOME/path/example.txt``$HOME/path/example.txt##Darwin.host2`
However, on another Macbook named `host3`, yadm will create a symbolic link
which looks like this:
`$HOME/path/example.txt``$HOME/path/example.txt##Darwin`
Since the hostname doesn't match any of the managed files, the more generic
version is chosen.
If running on a Linux server named `host4`, the link will be:
`$HOME/path/example.txt``$HOME/path/example.txt##Linux`
If running on a Solaris server, the link use the default `##` version:
`$HOME/path/example.txt``$HOME/path/example.txt##`
If no `##` version exists and no files match the current OS/HOST- NAME/USER,
then no link will be created.
| OS is determined by running `uname -s`, HOSTNAME by running `hostname -s`, and USER by running `id -u -n`. **yadm** will automatically create these links by default. This can be disabled using the yadm.auto-alt configuration. Even if disabled, links can be manually created by running **yadm** alt.
## Strategies for alternate files on different systems
Where possible, you should try to use the same file on every system. Here are a few examples:
### .vimrc
```vim
let OS=substitute(system('uname -s'),"\n","","")
if (OS == "Darwin")
" do something that only makes sense on a Mac
endif
```
### .tmux.conf
# use reattach-to-user-namespace as the default command on OSX
if-shell "test -f /usr/local/bin/reattach-to-user-namespace" 'set -g default-command "reattach-to-user-namespace -l bash"'
### .bash_profile
```bash
system_type=$(uname -s)
if [ "$system_type" = "Darwin" ]; then
eval $(gdircolors $HOME/.dir_colors)
else
eval $(dircolors -b $HOME/.dir_colors)
fi
```
### .gitconfig
However, sometimes the type of file you are using doesn't allow for this type of
logic. If a configuration can do an "_include_", you can include a specific
alternate version using **yadm**. Consider these three files:
`.gitconfig`
```ini
[log]
decorate = short
abbrevCommit = true
[include]
path = .gitconfig.local
```
`.gitconfig.local##Darwin`
```ini
[user]
name = Tim Byrne
email = tim@personal.email.org
```
`.gitconfig.local##Linux`
```ini
[user]
name = Dr. Tim Byrne
email = dr.byrne@work.email.com
```
Configuring Git this way includes `.gitconfig.local` in the standard
`.gitconfig`. **yadm** will automatically link the correct version based on the
operation system. The bulk of your configurations can go in a single file, and
you just put the exceptions in OS-specific files.

40
_docs/050_encryption.md Normal file
View file

@ -0,0 +1,40 @@
---
title: "Encryption"
permalink: /docs/encryption
---
It can be useful to manage confidential files, like SSH keys, across multiple
systems. However, doing so would put plain text data into a Git repository,
which often resides on a public system. **yadm** implements a feature which can
make it easy to encrypt and decrypt a set of files so the encrypted version can
be maintained in the Git repository. This feature will only work if the gpg
command is available.
_It is recommended that you use a private repository when keeping confidential
files, even though they are encrypted._
To use this feature, a list of patterns must be created and saved as
`$HOME/.yadm/encrypt`. For example:
.ssh/*.key
The `yadm encrypt` command will find all files matching the patterns, and
prompt for a password. Once a password has confirmed, the matching files will be
encrypted and saved as `$HOME/.yadm/files.gpg`. The patterns and files.gpg
should be added to the **yadm** repository so they are available across multiple
systems.
yadm add .yadm/encrypt
yadm add .yadm/files.gpg
To decrypt these files later, or on another system run `yadm decrypt` and
provide the correct password.
_By default, any decrypted files will have their "group" and "others"
permissions removed._
### Asymmetric Encryption
Symmetric encryption is used by default, but asymmetric encryption may
be enabled using the `yadm.gpg-recipient` configuration. To do so, run:
yadm config yadm.gpg-recipient <recipient-address>
For this to work, `<recipient-address>` must exist in your gpg keyrings.

142
_docs/060_faq.md Normal file
View file

@ -0,0 +1,142 @@
---
title: "Frequently Asked Questions"
permalink: /docs/faq
#{% include toc title="Questions" %}
---
## Usage
### I just cloned my repository, but `yadm status` shows conflicts. Why?
Prior to cloning your repository, files managed by **yadm** already existed. For
example, imagine you are logged into a system and `$HOME/.bash_profile` already
exists. If you then clone your **yadm** repository—which also contains
`.bash_profile`—then you will likely get a conflict. You must decide how to
resolve that conflict. Perhaps you don't want to overwrite the current version.
You might want merge the content together in some way. This can be resolved the
same way you resolve any Git conflict.
If you merely want to forcefully overwrite all the managed files using the HEAD
revision of your repository, you probably want to run
```
yadm reset --hard HEAD
```
### How can I display untracked files with a `yadm status` command?
By default, **yadm** is configured to ignore untracked files when displaying a
status. You can use the `-u` paramter on the status command to alter how
untracked files are treated. `-unormal` will show untracked files and
directories.
```
yadm status -unormal
```
If you want to change the default treatment, you can change this configuration
on the **yadm** repository itself.
```
yadm gitconfig --unset status.showUntrackedFiles
```
### How can I stage all modified files at once?
Just as with Git, you can use the `add` command.
```
yadm add -u :/
```
(Starting with Git 2.0, the `:/` is not necessary)
### How can I change the URL of my remote **yadm** repository?
This is done the same way you change the URL of any Git repository.
```
yadm remote set-url origin <NEW-URL>
```
This could be useful if you manage your ssh keys in the **yadm** repository.
That could make it difficult to initially clone the repository using the `ssh`
protocol. You can start by cloning the repository using the `https` protocol
(and providing a password), and then change the repository's URL after you've
decrypted your ssh keys.
### I've customized **yadm** configurations (stored in `~/.yadm/config`). Should I add that to my repository?
Certainly. That is a good way to carry your **yadm** configurations around (just
like the rest of your dotfiles).
### Can you point to any example **yadm** managed repositories?
[This page](examples) contains some examples.
## Encryption
### Can I use **yadm** without **gpg**?
Of course. You only need `gpg` installed if you plan on using the
encrypt/decrypt features. **yadm** will tell you if it is missing a dependency
for any command.
### Should I `yadm add` my `.yadm/encrypt` file?
Yes! This way your configuration for what files should be encrypted will follow
you when you clone your repository.
### Should I `yadm add` encrypted files to repository?
No, you should not. Files you want encrypted should be added to the file
`.yadm/files.gpg` using the `yadm encrypt` command. Then `.yadm/files.gpg`
should be added to the **yadm** repository. This way, only an encrypted
collection of those files are put into the repository. After cloning or updating
your repository, you can use `yadm decrypt` to extract those files from
`.yadm/files.gpg`. See the
[encryption help](encryption) for more details.
### I modified an encrypted file, but **yadm** doesn't show any modifications. Why?
If you changed files which are matched by `.yadm/encrypt`, you must re-run `yadm
encrypt` to generate a new version of `.yadm/files.gpg`. Then `.yadm/files.gpg`
can be added to a new commit.
### Can I use **yadm** and **git-crypt**?
There is an experimental version of **yadm** which can use **git-crypt**. You
can find it in the [git-crypt-support branch](
https://github.com/TheLocehiliosan/yadm/commits/git-crypt-support
). See the
[notes](
https://github.com/TheLocehiliosan/yadm/commit/efb7fd16612fe650b1286f0c696696f412772ab3
) in the commit messages of that branch for details.
## Comparisons
### How does **yadm** differ from **homeshick**?
**yadm** and **homeshick** are both written in Bash, with very limited
dependencies. However, **homeshick** works by symlinking data from a repository
working directory into your `$HOME` directory. **yadm** instead uses your
`$HOME` directory _as_ its working directory. **homeshick** allows for multiple
"castles" to be linked into `$HOME`, while **yadm** is designed to work with a
single repository. **homeshick** requires you to change into the "castle"
directory before performing any Git based commands. **yadm** allows you to
perform operations regardless of your location. **yadm** also includes unique
features to encrypt private data, and symlink alternate versions of files based
on OS type or hostname.
### How does **yadm** differ from **vcsh**?
**yadm** and **vcsh** both work as a filters for standard Git commands. Both
also use your `$HOME` directory _as_ the repository's working directory.
However, **vcsh** is designed to work with multiple repositories, **yadm**
instead uses a single repository. **vcsh** requires you to specify which
repository you want to operate on, while **yadm** only operates on one. If you
want to use Git submodules, you _may_ have trouble using **vcsh**. This is
because only one repository can be the owner of the `.gitmodules` file.
**yadm** also includes unique features to encrypt private data, and symlink
alternate versions of files based on OS type or hostname.

23
_docs/070_examples.md Normal file
View file

@ -0,0 +1,23 @@
---
title: "Example Dotfiles"
permalink: /docs/examples
---
Need some inspiration? Here are some public dotfiles repositories managed by
**yadm**. Drop me a line if you have a dotfiles repo you'd like added to this
list.
* [DoomHammer/dotfiles](https://github.com/DoomHammer/dotfiles)
* [SShrike/dotfiles](https://github.com/SShrike/dotfiles)
* [TheLocehiliosan/dotfiles](https://github.com/TheLocehiliosan/dotfiles)
* [akatrevorjay/dotfiles](https://github.com/akatrevorjay/dotfiles)
* [akupila/dotfiles](https://github.com/akupila/dotfiles)
* [bjartek/dotfiles](https://github.com/bjartek/dotfiles)
* [cschooley/dotfiles](https://github.com/cschooley/dotfiles)
* [czchen/dotfiles](https://github.com/czchen/dotfiles)
* [esphen/dotfiles](https://github.com/esphen/dotfiles)
* [gverilla/dotfiles](https://github.com/gverilla/dotfiles)
* [mago0/dotfiles](https://github.com/mago0/dotfiles)
* [mes5k/dotfiles](https://github.com/mes5k/dotfiles)
* [pendowski/dotfiles](https://github.com/pendowski/dotfiles)
* [tonipes/dotfiles](https://github.com/tonipes/dotfiles)
* [zamaterian/dotfiles](https://github.com/zamaterian/dotfiles)

View file

@ -1,3 +1,15 @@
<!-- start custom footer snippets -->
<div id="quoteline"></div>
<script language="JavaScript">
var quote = new Array ();
quote[0] = ["A house that does not have one warm, comfy chair in it is soulless.", "May Sarton"];
quote[1] = ["Home is an invention on which no one has yet improved.", "Ann Douglas"];
quote[2] = ["Seek home for rest, for home is best.", "Thomas Tusser"];
quote[3] = ["I would not change my blest estate for all the world calls good or great.", "Isaac Watts"];
quote[4] = ["To feel at home, stay at home.", "Clifton Fadiman"];
quote[5] = ["We shape our dwellings, and afterwards our dwellings shape us.", "Winston Churchill"];
var i = Math.floor(quote.length*Math.random());
document.getElementById('quoteline').innerHTML = '<i>'+quote[i][0]+'</i>&mdash;'+quote[i][1];
</script>
<!-- end custom footer snippets -->
<!-- end custom footer snippets -->

View file

@ -2,4 +2,14 @@
<!-- insert favicons. use http://realfavicongenerator.net/ -->
<!-- end custom head snippets -->
<!-- support for buttons.github.io -->
<script async defer src="https://buttons.github.io/buttons.js"></script>
<style type="text/css">
/* override mmistakes image highlighting */
.archive__item:hover .archive__item-teaser {
box-shadow: none;
}
</style>
<!-- end custom head snippets -->

109
_pages/main.md Normal file
View file

@ -0,0 +1,109 @@
---
layout: splash
permalink: /
stars_button: '
{::nomarkdown}<iframe
src="https://ghbtns.com/github-btn.html?user=TheLocehiliosan&repo=yadm&type=star&count=true"
frameborder="0" scrolling="0" width="100"
height="20px" style="float: right;"></iframe>{:/nomarkdown}
'
title: 'Yet Another Dotfiles Manager'
header:
overlay_color: "#000"
overlay_filter: 0.7
overlay_image: "unsplash-cabin.jpg"
cta_label: "Install Now"
cta_url: "/docs/install"
caption: "_Photo: [Paul Itkin](https://unsplash.com/photos/NKSGuJzExIo)_"
excerpt: '
When you live in a command line, configurations are a deeply personal thing.
They are often crafted over years of experience, battles lost, lessons learned,
advice followed, and ingenuity rewarded. When you are away from your own
configurations, you are an orphaned refugee in unfamiliar and hostile
surroundings. You feel clumsy and out of sorts. You are filled with a sense of
longing to be back in a place you know. A place you built. A place where all the
short-cuts have been worn bare by your own travels. A place you proudly call...
**$HOME**.
'
feature_row:
- title: "Overview"
alt: ""
btn_class: "btn--inverse"
btn_label: "Discover yadm"
image_path: "cogs-padding.png"
url: "/docs/overview"
excerpt: '
If you know how to use Git, you already know how to use **yadm**.
**yadm** helps you maintain a single repository of dotfiles, while keeping
them where they belong---in `$HOME`.
Anything you can do with Git, you can do using **yadm**.
'
- title: "Alternate Files"
alt: ""
btn_class: "btn--inverse"
btn_label: "Details"
image_path: "copy-padding.png"
url: "/docs/alternates"
excerpt: '
Sometimes you need different configurations on different systems.
**yadm** makes it possible to use alternate versions of files based on
the OS or hostname of the system.
'
- title: "Encryption"
alt: ""
btn_class: "btn--inverse"
btn_label: "Learn more"
image_path: "secret-padding.png"
url: "/docs/encryption"
excerpt: '
Configurations occasionally include secrets such as passwords,
encryption keys, or other sensitive information. **yadm** allows you to
add such files to an encrypted archive, which can be maintained
alongside your other configurations.
'
- title: "FAQ"
alt: ""
btn_class: "btn--inverse"
btn_label: "Get answers"
image_path: "question-circle-padding.png"
url: "/docs/faq"
excerpt: '
Have a question? You might find an answer in the FAQ.
'
- title: "Manual"
alt: ""
btn_class: "btn--inverse"
btn_label: "See man page"
image_path: "book-padding.png"
url: "https://github.com/TheLocehiliosan/yadm/blob/master/yadm.md"
excerpt: '
View the manual online.
'
- title: "Example Dotfiles"
alt: ""
btn_class: "btn--inverse"
btn_label: "View examples"
image_path: "keyboard-padding.png"
url: "/docs/examples"
excerpt: '
Need some inspiration? Here are some example dotfiles repository.
'
---
{% include feature_row id="intro" type="center" %}
{% include feature_row %}

BIN
images/binary-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

BIN
images/binary.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 973 B

BIN
images/book-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

BIN
images/book.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
images/branch-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

BIN
images/branch.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
images/clone-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
images/clone.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
images/cogs-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
images/cogs.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
images/copy-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

BIN
images/copy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
images/download-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

BIN
images/download.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
images/git-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
images/git.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
images/home-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

BIN
images/home.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

BIN
images/info-circle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
images/info-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
images/info.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
images/key-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
images/key.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
images/keyboard-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

BIN
images/keyboard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
images/lock-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

BIN
images/lock.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
images/question-circle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 KiB

BIN
images/question-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

BIN
images/question.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
images/qustion-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

BIN
images/secret-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
images/secret.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
images/transfer-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
images/transfer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 652 B

BIN
images/tree-padding.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
images/tree.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
images/unsplash-cabin.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 KiB