diff --git a/README.md b/README.md
index c9be71a..7cb1486 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,7 @@ If you find a nice ebook about Python, feel free to fork PythonBooks and add it
Alternatively, you can send us an email with book infos : pythonbooks@revolunet.com
-Thanks per advance !
+Thanks per advance đź’™!
## HISTORY
diff --git a/css/pythonbooks.css b/css/pythonbooks.css
index 6ccb174..9b01d04 100644
--- a/css/pythonbooks.css
+++ b/css/pythonbooks.css
@@ -9,7 +9,7 @@
*/
/*
- NOTE FROM REVOLUNET :
+ NOTE FROM REVOLUNET :
Only Bootstrap styles needed for PythonBooks are here.
*/
@@ -118,6 +118,145 @@ body {
color: #333333;
background-color: #ffffff;
}
+
+/* css for loader */
+#loader-wrapper {
+ position: relative;
+ top:0;
+ left:0;
+ width:100%;
+ height: 100%;
+}
+
+#loader{
+ display: block;
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ width: 150px;
+ height: 150px;
+ margin: -75px 0 0 -75px;
+ margin-top: 100px;
+ border: 6px solid transparent;
+ border-radius: 50%;
+ border-top-color:#3498db;
+ z-index: 10001;
+
+ -webkit-animation: spin 1.5s linear infinite;
+ animation: spin 1.5s linear infinite;
+}
+
+#loader::before {
+ content:"";
+ position: absolute;
+ top:5px;
+ left:5px;
+ right:5px;
+ bottom:5px;
+ border:6px solid transparent;
+ border-radius: 50%;
+ border-top-color:#e74c3c;
+
+ -webkit-animation: spin 1.5s linear infinite;
+ animation: spin 1.5s linear infinite;
+}
+
+#loader::after {
+ content:"";
+ position: absolute;
+ top:15px;
+ left:15px;
+ right:15px;
+ bottom:15px;
+ border:6px solid transparent;
+ border-radius: 50%;
+ border-top-color: #f9c922;
+
+ -webkit-animation: spin 1.5s linear infinite;
+ animation: spin 1.5s linear infinite;
+}
+
+@-webkit-keyframes spin{
+ 0% {
+ -webkit-transform: rotate(0deg);
+ -ms-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ -ms-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+
+@keyframes spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ -ms-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ -ms-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+
+#loader-wrapper .loader-section {
+ position: fixed;
+ top: 0;
+ width: 50%;
+ height: 100%;
+ background-color: #000;
+ z-index: 10000;
+}
+
+#loader-wrapper .loader-section.section-left {
+ left: 0;
+}
+
+#loader-wrapper .loader-section.section-right {
+ right: 0;
+}
+
+/* Loaded */
+.loaded #loader-wrapper .loader-section.section-left {
+ -webkit-transform: translateX(-100%); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: translateX(-100%); /* IE 9 */
+ transform: translateX(-100%); /* Firefox 16+, IE 10+, Opera */
+
+ -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+ transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+}
+
+.loaded #loader-wrapper .loader-section.section-right {
+ -webkit-transform: translateX(100%); /* Chrome, Opera 15+, Safari 3.1+ */
+ -ms-transform: translateX(100%); /* IE 9 */
+ transform: translateX(100%); /* Firefox 16+, IE 10+, Opera */
+
+ -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+ transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+}
+
+.loaded #loader {
+ opacity: 0;
+ -webkit-transition: all 0.3s ease-out;
+ transition: all 0.3s ease-out;
+}
+
+.loaded #loader-wrapper{
+ visibility: hidden;
+}
+
+.no-js #loader-wrapper {
+ display: none;
+}
+.no-js h1 {
+ color: #222222;
+}
+
+/* end of css for loader */
+
a {
color: #0088cc;
text-decoration: none;
@@ -1231,14 +1370,34 @@ a.jsbookslinks {
color: #3775a9;
text-decoration: none;
}
-.pythonbooks {
+.jsbooks {
background-color: transparent;
- margin: 0 0 30px;
+ margin: 18px 0 0px;
}
-.pythonbooks > * {
+.jsbooks > * {
display: inline;
margin-right: 10px;
}
+#filterBy {
+ float: left;
+ overflow: hidden;
+ margin: 0 0 30px;
+}
+#filterBy li {
+ float: left;
+ margin: 0 0 0 10px;
+ list-style: none;
+}
+#filterBy li:first-child {
+ margin-left: 0;
+}
+#filterBy a {
+ color: #0b4d84;
+}
+ #filterBy .active {
+ color: #2f99f1;
+}
+
.booksection {
margin-bottom: 30px;
}
@@ -1272,7 +1431,7 @@ a.jsbookslinks {
width: 140px;
height: 184px;
background: rgba(54, 109, 156,.9) url('../img/view.png') no-repeat center;
- z-index: 10;
+ z-index: 5;
-webkit-transition:opacity .2s linear;
-moz-transition:opacity .2s linear;
-o-transition:opacity .2s linear;
@@ -1325,7 +1484,7 @@ hr {
border-top: 1px solid #dfdddd;
border-bottom: 1px solid white;
}
-ul {
+ul#social_buttons {
list-style-type: none;
position: absolute;
top: 50%;
@@ -1333,11 +1492,11 @@ ul {
right: 40px;
height: 20px;
}
-ul li {
+ul#social_buttons li {
display: inline;
height: 20px;
}
-ul li a {
+ul#social_buttons li a {
vertical-align: top;
color: grey;
text-shadow: 1px 0 0 rgba(255, 255, 255, 0.4);
@@ -1348,7 +1507,7 @@ ul li a {
-ms-transition: all .2s linear;
transition: all .2s linear;
}
-ul li a:hover {
+ul#social_buttons li a:hover {
text-decoration: none;
color: black;
text-shadow:none;
@@ -1648,7 +1807,7 @@ ul li a:hover {
width: 140px;
height: 184px;
}
-
+
}
@media (min-width: 768px) and (max-width: 979px) {
@@ -1685,7 +1844,7 @@ ul li a:hover {
ul {
margin-top: -10px;
}
- ul li:first-child {
+ ul#social_buttons li:first-child {
display: none;
}
}
diff --git a/img/Advanced-Machine-Learning-with-Python.jpg b/img/Advanced-Machine-Learning-with-Python.jpg
new file mode 100644
index 0000000..751624e
Binary files /dev/null and b/img/Advanced-Machine-Learning-with-Python.jpg differ
diff --git a/img/Building Machine Learning Systems with Python.jpg b/img/Building-Machine-Learning-Systems-with-Python.jpg
similarity index 100%
rename from img/Building Machine Learning Systems with Python.jpg
rename to img/Building-Machine-Learning-Systems-with-Python.jpg
diff --git a/img/CrackingCodes_cover.png b/img/CrackingCodes_cover.png
new file mode 100644
index 0000000..937da6a
Binary files /dev/null and b/img/CrackingCodes_cover.png differ
diff --git a/img/Learning-IPython-for-Interactive-Computing-and-Data-Visualization-Second-Edition.png b/img/Learning-IPython-for-Interactive-Computing-and-Data-Visualization-Second-Edition.png
new file mode 100644
index 0000000..9e4f319
Binary files /dev/null and b/img/Learning-IPython-for-Interactive-Computing-and-Data-Visualization-Second-Edition.png differ
diff --git a/img/Learning-OpenCV-3-Computer-Vision-with-Python-Second-Edition.jpg b/img/Learning-OpenCV-3-Computer-Vision-with-Python-Second-Edition.jpg
new file mode 100644
index 0000000..9623569
Binary files /dev/null and b/img/Learning-OpenCV-3-Computer-Vision-with-Python-Second-Edition.jpg differ
diff --git a/img/Mastering-Python.jpg b/img/Mastering-Python.jpg
new file mode 100644
index 0000000..6ec6de0
Binary files /dev/null and b/img/Mastering-Python.jpg differ
diff --git a/img/What_You_Need_to_Know_about_Python.jpg b/img/What_You_Need_to_Know_about_Python.jpg
index ee43bea..4acc19b 100644
Binary files a/img/What_You_Need_to_Know_about_Python.jpg and b/img/What_You_Need_to_Know_about_Python.jpg differ
diff --git a/img/cover_20_python.png b/img/cover_20_python.png
new file mode 100644
index 0000000..52873e0
Binary files /dev/null and b/img/cover_20_python.png differ
diff --git a/img/cover_PythonGrow.png b/img/cover_PythonGrow.png
new file mode 100644
index 0000000..02df0c3
Binary files /dev/null and b/img/cover_PythonGrow.png differ
diff --git a/img/cover_bayes.png b/img/cover_bayes.png
new file mode 100644
index 0000000..d6ea350
Binary files /dev/null and b/img/cover_bayes.png differ
diff --git a/img/cover_dsp.jpg b/img/cover_dsp.jpg
new file mode 100644
index 0000000..574c66a
Binary files /dev/null and b/img/cover_dsp.jpg differ
diff --git a/img/cover_invent4th_thumb.png b/img/cover_invent4th_thumb.png
new file mode 100644
index 0000000..f97ead8
Binary files /dev/null and b/img/cover_invent4th_thumb.png differ
diff --git a/img/cover_inventgame.jpg b/img/cover_inventgame.jpg
deleted file mode 100644
index 4371ec2..0000000
Binary files a/img/cover_inventgame.jpg and /dev/null differ
diff --git a/img/cover_inventgame.png b/img/cover_inventgame.png
deleted file mode 100644
index 034898e..0000000
Binary files a/img/cover_inventgame.png and /dev/null differ
diff --git a/img/cover_learnbreak.jpg b/img/cover_learnbreak.jpg
new file mode 100644
index 0000000..aba9357
Binary files /dev/null and b/img/cover_learnbreak.jpg differ
diff --git a/img/cover_makinggame.png b/img/cover_makinggame.png
index 78b8604..1676be9 100644
Binary files a/img/cover_makinggame.png and b/img/cover_makinggame.png differ
diff --git a/img/cover_py101.jpg b/img/cover_py101.jpg
new file mode 100644
index 0000000..bedfca1
Binary files /dev/null and b/img/cover_py101.jpg differ
diff --git a/img/hackingcyphers.png b/img/hackingcyphers.png
deleted file mode 100644
index 97a1fbf..0000000
Binary files a/img/hackingcyphers.png and /dev/null differ
diff --git a/index.html b/index.html
index 5f5344d..a353d95 100644
--- a/index.html
+++ b/index.html
@@ -31,7 +31,7 @@
+
See also :
+ +Filter by :
+