Skip to content

Instantly share code, notes, and snippets.

View ssaurel's full-sized avatar

Sylvain Saurel ssaurel

View GitHub Profile
@ssaurel
ssaurel / index.html
Created March 26, 2021 14:32
Bitcoin Price In Words HTML5 Page
<html>
<head>
<title>Bitcoin Price in Words - Sylvain Saurel</title>
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Sriracha&display=swap" rel="stylesheet">
<style>
#top {
@ssaurel
ssaurel / hexadecimalcolorclock.html
Created January 5, 2020 14:12
Hexadecimal Color Clock on the SSaurel's Blog
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Roboto+Condensed&display=swap" rel="stylesheet">
<style>
#hexatime {
width: 300px;
text-align: center;
margin: 0 auto;
margin-top: 500px;
@ssaurel
ssaurel / hexislight.js
Created January 5, 2020 14:01
hexislight function for the Hexadecimal Color Clock on the SSaurel's Blog
function hexislight(color) {
var hex = color.replace('#', '');
var red = parseInt(hex.substr(0, 2), 16);
var green = parseInt(hex.substr(2, 2), 16);
var blue = parseInt(hex.substr(4, 2), 16);
// it is a known formula, nothing magical here
var brightness = ((red * 299) + (green * 587) + (blue * 114)) / 1000;
return brightness > 155;
}
@ssaurel
ssaurel / hexaTime.js
Created January 5, 2020 13:54
hexaTime function for Hexadecimal Color Clock on the SSaurel's Blog
function hexaTime() {
var date = new Date();
// we convert in the 0 .. 255 range
var seconds = parseInt(date.getSeconds() * 255 / 59);
var minutes = parseInt(date.getMinutes() * 255 / 59);
var hours = parseInt(date.getHours() * 255 / 23);
return "#" + toHex(hours) + toHex(minutes) + toHex(seconds);
}
@ssaurel
ssaurel / ToHex.js
Created January 5, 2020 13:50
toHex function for Hexadecimal Color Clock on the SSaurel's Blog
function toHex(d) {
var hex = ("0" + (Number(d).toString(16))).slice(-2).toUpperCase();
return hex;
}
@ssaurel
ssaurel / hexatime.html
Created January 5, 2020 11:25
Hexadecimal Color Clock Tutorial on the SSaurel's Blog
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Roboto+Condensed&display=swap"
rel="stylesheet">
<style>
#hexatime {
width: 300px;
text-align: center;
margin: 0 auto;
@ssaurel
ssaurel / MainActivity.java
Created January 1, 2020 09:29
MainActivity for the Anagram Finder App on SSaurel's Blog
package com.ssaurel.myanagram;
import android.app.Dialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
@ssaurel
ssaurel / LoadWords.java
Created January 1, 2020 09:23
loadWords method on SSaurel's Blog
private void loadWords() {
new Thread(() -> {
Anagram.loadWords(MainActivity.this);
runOnUiThread(() -> {
validate.setEnabled(Anagram.isLoaded());
});
}).start();
}
@ssaurel
ssaurel / activity_main.xml
Last active January 1, 2020 09:09
UI for the Anagram Finder App on the SSaurel's Blog
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
android:orientation="vertical"
tools:context=".MainActivity">
<!-- We add a Dummy layout to prevent EditText to gain focus -->
@ssaurel
ssaurel / Anagram.java
Last active January 1, 2020 08:49
Anagram class for Anagram Finder application on the SSaurel's Blog
package com.ssaurel.myanagram;
import android.content.Context;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;