Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Paul-Houser/StartTree
A terminal-style home page replicating the tree command .
https://github.com/Paul-Houser/StartTree
Last synced: about 1 month ago
JSON representation
A terminal-style home page replicating the tree command .
- Host: GitHub
- URL: https://github.com/Paul-Houser/StartTree
- Owner: Paul-Houser
- Created: 2020-08-23T22:27:40.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-07-10T20:57:26.000Z (5 months ago)
- Last Synced: 2024-08-01T21:44:40.661Z (4 months ago)
- Language: CSS
- Homepage:
- Size: 7.82 MB
- Stars: 151
- Watchers: 6
- Forks: 14
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- project-awesome - Paul-Houser/StartTree - A terminal-style home page replicating the tree command . (CSS)
- awesome-startpage - StartTree - A terminal-style home page replicating the tree command, modified from this start page, which no longer exists. (Projects / Static)
README
# StartTree
A terminal-style home page replicating the tree command, modified from [this](https://notabug.org/nytly/home) start page, which no longer exists.
# Usage
## Requirements
Requires the `bs4` python package.## Installation
To install StartTree for the first time, run the following commands:
(Note: If the `~/.config/StartTree` directory already exists, `init.sh` will not copy the example config to prevent accidentally overwriting a custom config. )
```
git clone https://github.com/Paul-Houser/StartTree.git
cd StartTree
chmod +x init.sh
chmod +x generate.py
./init.sh
./generate.py
```
This will create the directory `~/.config/StartTree` containing the default `config.yaml`, install `starttree.py` to your `$PATH`, as well as generate the html/css, which you can view by pointing your browser at `$HOME/.cache/StartTree/index.html`.## Config
The config should be placed in `~/.config/StartTree/config.yaml`## Updating the HTML
To re-generate the html/css after editing the config, execute `starttree.py` from any directory.# Example Config
```yaml
font_size: 22 # specify font size
theme: void # specify the name of a theme in the themes/ directory, or use 'pywal'
tree_1: # each column should be named 'tree_X' where X is unique for each tree.
general: # Header name
github: "https://www.github.com/" # Link-text: url
gmail: "https://mail.google.com/"
reddit:
# the following is an example of naming a link something with a space,
# or containing characters that cannot be in a yaml variable name.
frontpage:
- "https://www.reddit.com/"
- "front page"
unixporn: "https://www.reddit.com/r/unixporn/"
tree_2:
other:
archwiki:
- "https://archlinux.org/"
- "arch wiki"
hulu: "https://www.hulu.com/"
netflix: "https://www.netflix.com/"
youtube: "https://www.youtube.com/"
```# Themes
A variety of themes can be found in the `themes` directory.
If one wishes to dynamically theme from `pywal`, they may select `pywal` as their chosen theme in `config.yaml`.
# Docker
In order to circumvent some restrictions on browsers for what is allowed as a "Home" and "New Tab" page, you can host StartTree as a lightweight `NGINX` server through `docker-compose`.
To set this up, one must have `docker` and `docker-compose` installed and configured. Then, go into the directory where you cloned `StartTree`, and run
```bash
cd docker
vim docker-compose.yaml # edit specifics to your liking
docker-compose -f docker-compose.yaml up -d
```This will make the `NGINX` server persist across reboots. You can point your browser's new tab and home page to `localhost:` and you should see your startpage!