2020-08-30 13:43:00 -05:00
< div align = "center" >
2020-12-29 12:01:14 -06:00
< h1 > Bento< / h1 >
< b > 🍱 A Clean and Simple Startpage< / b >
2020-08-30 13:43:00 -05:00
< / div >
2020-08-14 13:04:38 -05:00
2020-10-04 22:11:51 -05:00
< p align = "center" >
2021-01-10 12:52:14 -06:00
< img src = "https://github.com/MiguelRAvila/Bento/blob/master/assets/Header.png" >
2020-10-04 22:11:51 -05:00
< / p >
2020-08-14 13:04:38 -05:00
2021-01-10 13:47:16 -06:00
> Wallpaper by [anima_contritum](https://www.reddit.com/user/anima_contritum)
2021-01-10 13:47:05 -06:00
2020-10-10 20:41:14 -05:00
## Index
2020-08-31 23:12:44 -05:00
2021-01-09 23:56:22 -06:00
- [Bento ](# )
- [Features ](#features )
- [Usage ](#usage )
- [Home Page ](#as-home-page )
- [New Tab ](#as-new-tab )
- [Customization ](#customization )
- [Links ](#links )
- [Colors ](#colors )
- [Theme Depending at the time ](#theme-depending-at-the-time )
- [Image Background ](#image-background )
- [Greetings ](#greetings )
- [Weather Info ](#weather-info )
- [Weather Icons ](#weather-icons )
2020-10-10 20:38:58 -05:00
### Features:
2020-08-14 13:04:38 -05:00
2021-01-10 13:47:05 -06:00
- **Dark/Light** mode, you can toggle them and It'll be saved in local storage.
- **Clock and Date** format can be set to 24 hour (default) or 12 hour.
- **Greetings** are easy to modify.
- **Variables** for custom colors and font sizes in the `style.css` code.
2021-01-09 23:56:22 -06:00
- **Icons** all icons are from Feather Icons (Some others I made them with the Feather icons as a base)
2021-01-10 13:47:05 -06:00
- **Modular** javascript files for an easy read.
2020-08-14 13:04:38 -05:00
2020-10-10 20:41:14 -05:00
## Usage:
2020-08-14 13:04:38 -05:00
2020-08-31 23:12:44 -05:00
#### As Home Page:
2020-10-10 20:48:16 -05:00
2020-08-14 13:04:38 -05:00
1. Fork this repo
2. Enable the Github Pages service `Settings > GitHub Pages > Source [master branch] > Save`
3. Set it as Home Page:
2021-01-09 23:56:22 -06:00
- Click the menu button. and select Options. Preferences.
- Click the Home panel.
- Click the menu next to Homepage and new windows and choose to show custom URLs and add your `Github Pages link`
2020-08-26 22:04:36 -05:00
2020-08-31 23:13:38 -05:00
#### As New Tab:
2020-10-10 20:48:16 -05:00
2021-01-09 23:56:22 -06:00
You can use different Add-ons/Extensions for it
2020-08-31 23:12:44 -05:00
2021-01-09 23:56:22 -06:00
- If you use Firefox: [Custom New Tab Page ](https://addons.mozilla.org/en-US/firefox/addon/custom-new-tab-page/?src=search )
- If you use Chromium (Brave, Vivaldi, Chrome): [Custom New Tab URL ](https://chrome.google.com/webstore/detail/custom-new-tab-url/mmjbdbjnoablegbkcklggeknkfcjkjia )
2020-10-10 20:39:56 -05:00
2020-10-10 20:41:14 -05:00
## Customization
2020-08-31 23:12:44 -05:00
2020-09-14 22:23:06 -05:00
> All the code is using variables and is comented, It's easy to customize the project to your own, and this sections are the principal customizable elements in the Startpage:
2020-10-10 20:41:14 -05:00
### Links
2020-09-14 22:23:06 -05:00
2020-10-10 20:48:16 -05:00
You can change the links (and the icons too) in the HTML Code:
2020-09-14 22:23:06 -05:00
2020-10-10 20:48:16 -05:00
```html
2021-01-09 23:56:22 -06:00
< a
href="https://github.com/"
target="blank"
class="buttonLink__link card buttonLink__link-1"
>
< i class = "buttonLink__icon" data-feather = "github" > < / i >
2020-10-16 20:28:24 -05:00
< / a >
2020-10-10 20:48:16 -05:00
```
2020-09-14 22:23:06 -05:00
2020-10-10 20:48:16 -05:00
Change the link in the `href` property with the link you want. (The `target="blank"` makes the link to open a new tab with the link you choose).
2021-01-09 23:56:22 -06:00
The Project uses [Feather icons ](https://feathericons.com/ ) for the icons, and you can change them in the `data-feather=""` property with the name of the icon in the page.
2020-09-14 22:23:06 -05:00
2020-10-10 20:41:14 -05:00
### Colors
2020-10-10 20:48:16 -05:00
2020-08-31 23:12:44 -05:00
In the CSS code you can always change the variables for both themes (Dark and Light)
2020-08-26 22:06:55 -05:00
2020-10-10 20:26:19 -05:00
```css
2020-10-10 20:48:16 -05:00
/* Light theme */
2020-10-10 20:26:19 -05:00
:root {
2021-01-09 23:56:22 -06:00
--accent: #4b8ec4 ; /* Hover color */
--bg: #f5f5f5 ; /* Background color */
--sbg: #e4e6e6 ; /* Cards color */
--fg: #3a3a3a ; /* Foreground color */
--sfg: #3a3a3a ; /* Sceondary Foreground color */
2020-10-10 20:26:19 -05:00
}
2020-10-10 20:48:16 -05:00
/* Dark theme */
2020-10-10 20:26:19 -05:00
.darktheme {
2021-01-09 23:56:22 -06:00
--accent: #4b8ec4 ; /* Hover color */
--bg: #19171a ; /* Background color */
--sbg: #201e21 ; /* Cards color */
--fg: #d8dee9 ; /* Foreground color */
--sfg: #3a3a3a ; /* Secondary Foreground color */
2020-10-10 20:26:19 -05:00
}
```
2021-01-10 12:52:14 -06:00
< p align = "center" >
< img src = "https://github.com/MiguelRAvila/Bento/blob/master/assets/SubHeader.png" >
< / p >
2020-10-16 20:28:24 -05:00
### Theme Depending at the time
In the `theme.js` file there's a section about changing the theme depending in the time. You have to 'Uncomment' that section to enable it:
```js
const today = new Date();
const Hr = today.getHours();
if (Hr >= 19 || Hr < 5 ) {
2021-01-09 23:56:22 -06:00
enableDark();
2020-10-16 20:28:24 -05:00
} else {
2021-01-09 23:56:22 -06:00
disableDark();
2020-10-16 20:28:24 -05:00
}
```
2020-10-10 20:41:14 -05:00
### Image Background
2020-09-06 18:42:26 -05:00
2020-10-10 20:48:16 -05:00
You can set your own background image with the variable `--imgbg` and set the route to the image you want It's disable by default. If you uncomment the variable, it has by default this image:
2020-10-10 20:09:25 -05:00
< p align = "center" >
< img src = "https://github.com/MiguelRAvila/Bento/blob/master/assets/previewbg.png" >
< / p >
2020-09-06 18:42:26 -05:00
2020-10-10 20:09:25 -05:00
It has a black filter by default in `--imgcol` , and it'ts value is: `rgba(255, 255, 255, 0.7)` and `rgba(0, 0, 0, 0.7)` for the dark theme. You can change them and the opacity for a better experience with your image.
2020-09-11 19:23:13 -05:00
2020-10-10 20:41:14 -05:00
### Greetings
2020-10-10 20:48:16 -05:00
2020-09-16 12:27:55 -05:00
You can put your name and change the greetings.
```js
2021-01-09 23:56:22 -06:00
var name = "John Doe";
const gree1 = "Go to Sleep! ";
const gree2 = "Good morning! ";
const gree3 = "Good afternoon ";
const gree4 = "Good evening, ";
2020-09-16 12:27:55 -05:00
```
It'll change in order of the hour.
2020-10-10 20:41:14 -05:00
### Weather Info
2020-09-11 19:23:13 -05:00
2021-01-09 23:56:22 -06:00
For setting up the Weather widget you're going to need an API Key in: `https://openweathermap.org/` . Once you have your Key you'll need to set yourlatitude and longitude, you can use: `https://www.latlong.net/` to get them. Then you just have to fill them in the `weather.js` in the **js** folder:
```js
// Use your own key for the Weather, Get it here: https://openweathermap.org/
const key = "XXXXXXXXXXXXXXXXXXXXXXXXXXX";
setPosition();
function setPosition(position) {
// Here you can change your position
// You can use https://www.latlong.net/ to get it! (I use San Francisco as an example)
let latitude = 37.774929;
let longitude = -122.419418;
getWeather(latitude, longitude);
}
```
2020-10-10 20:09:25 -05:00
> If you don't like to have your API Key public, you can make the repo into a private one. You can still use the Github Pages service.
2020-10-10 20:41:14 -05:00
### Weather Icons
2020-10-10 20:09:25 -05:00
2020-10-10 20:52:47 -05:00
< p align = "center" >
< img src = "https://github.com/MiguelRAvila/Bento/blob/master/assets/previewico.png" >
< / p >
2021-01-09 23:56:22 -06:00
The weather icons are based in Feather icons and I made 4 sets of them:
2020-10-10 20:09:25 -05:00
2021-01-09 23:56:22 -06:00
- **Nord** Using the Nord Color Scheme and easy-to-eyes colors
- **OneDark** (_Default one_) Using the One Dark Pro color scheme
- **Dark** For White theme only users that want a minimalist look
- **White** For Dark theme only users that want a minimalist look
2020-09-11 19:23:13 -05:00
2020-10-10 20:48:16 -05:00
You set the icon theme changing this two lines of code in the `index.html` and `weather.js` files:
2020-10-10 20:09:25 -05:00
2021-01-09 23:56:22 -06:00
- If you want the Dark icon theme, change the `OneDark` to `Dark`
- If you want the White icon theme, change the `OneDark` to `White`
- If you want the Nord icon theme, change the `OneDark` to `Nord`
2020-10-10 20:09:25 -05:00
For example if I'd like to use the `Dark` icon theme:
```html
< div class = "weather-icon" >
2021-01-09 23:56:22 -06:00
< img src = "icons/OneDark/unknown.png" / >
2020-10-10 20:09:25 -05:00
< / div >
2021-01-09 23:56:22 -06:00
2020-10-10 20:09:25 -05:00
<!-- Change it to: -->
2021-01-09 23:56:22 -06:00
2020-10-10 20:09:25 -05:00
< div class = "weather-icon" >
2021-01-09 23:56:22 -06:00
< img src = "icons/Dark/unknown.png" / >
2020-10-10 20:09:25 -05:00
< / div >
```
```js
function displayWeather() {
2021-01-09 23:56:22 -06:00
iconElement.innerHTML = `<img src="icons/OneDark/${weather.iconId}.png"/>` ;
tempElement.innerHTML = `${weather.temperature.value}°<span class="darkfg">${tempUnit}</span>` ;
descElement.innerHTML = weather.description;
2020-10-10 20:09:25 -05:00
}
//Change it to:
function displayWeather() {
2021-01-09 23:56:22 -06:00
iconElement.innerHTML = `<img src="icons/Dark/${weather.iconId}.png"/>` ;
tempElement.innerHTML = `${weather.temperature.value}°<span class="darkfg">${tempUnit}</span>` ;
descElement.innerHTML = weather.description;
2020-10-10 20:09:25 -05:00
}
2021-01-09 23:56:22 -06:00
```