Compare commits
4 Commits
e5dbcc9ab8
...
da1fa7c77a
Author | SHA1 | Date |
---|---|---|
Robbie Antenesse | da1fa7c77a | |
Robbie Antenesse | b4bb1fc392 | |
Robbie Antenesse | 24d416ec02 | |
Robbie Antenesse | 3ceaf670b4 |
|
@ -7,8 +7,8 @@ Please note we have a code of conduct, please follow it in all your interactions
|
|||
|
||||
## Discussion
|
||||
|
||||
- Join the [Gitter community](https://gitter.im/book-tracker/general) to chat about the project or give feedback
|
||||
- Add [Issues](https://gitlab.com/Alamantus/book-tracker/issues) for feature requests or bug reports
|
||||
- Join the [Gitter community](https://gitter.im/Readlebee/community) to chat about the project or give feedback
|
||||
- Add [Issues](https://gitlab.com/Alamantus/Readlebee/issues) for feature requests or bug reports
|
||||
|
||||
## Pull Request Process
|
||||
|
||||
|
|
4
LICENSE
4
LICENSE
|
@ -631,7 +631,7 @@ to attach them to the start of each source file to most effectively
|
|||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
book-tracker
|
||||
Readlebee
|
||||
Copyright (C) 2019 Robbie Antenesse
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
|
@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
|
|||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
book-tracker Copyright (C) 2019 Robbie Antenesse
|
||||
Readlebee Copyright (C) 2019 Robbie Antenesse
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
|
43
README.md
43
README.md
|
@ -1,24 +1,24 @@
|
|||
# book-tracker
|
||||
# Readlebee
|
||||
|
||||
[![Read our Contribution Guidelines](https://badges.frapsoft.com/os/v1/open-source.svg?v=102)](./CONTRIBUTING.md) [![Issues](https://img.shields.io/github/issues/Alamantus/book-tracker.svg)](https://gitlab.com/Alamantus/book-tracker/issues) [![Join the chat at https://gitter.im/book-tracker/general](https://badges.gitter.im/book-tracker/general.svg)](https://gitter.im/book-tracker/general)
|
||||
[![Read our Contribution Guidelines](https://badges.frapsoft.com/os/v1/open-source.svg?v=102)](./CONTRIBUTING.md) [![Issues](https://img.shields.io/github/issues/Alamantus/Readlebee.svg)](https://gitlab.com/Alamantus/Readlebee/issues) [![Join the chat at https://gitter.im/Readlebee/community](https://badges.gitter.im/Readlebee/general.svg)](https://gitter.im/Readlebee/community)
|
||||
|
||||
An attempt at a viable alternative to Goodreads (currently lacking a name—ideas welcome!)
|
||||
|
||||
## Important Links
|
||||
|
||||
- [Project Scope](https://gitlab.com/Alamantus/book-tracker/wikis/Project-Scope)
|
||||
- [Project Scope](https://gitlab.com/Alamantus/Readlebee/wikis/Project-Scope)
|
||||
- Features we feel are essential to the project. Anything beyond the scope should be discussed for later and not prioritized.
|
||||
- [Dependencies Stack](https://gitlab.com/Alamantus/book-tracker/wikis/Dependencies-Stack)
|
||||
- [Dependencies Stack](https://gitlab.com/Alamantus/Readlebee/wikis/Dependencies-Stack)
|
||||
- A list of dependencies used in the project and a short explanation of what each of them are for.
|
||||
- [Contrubution Guidelines](./CONTRIBUTING.md)
|
||||
- Subject to change but important to follow. Includes a basic code of conduct.
|
||||
- [Project chat via Gitter](https://gitter.io/book-tracker)
|
||||
- [Project chat via Gitter](https://gitter.io/Readlebee)
|
||||
- Real-time discussion about the project.
|
||||
- [Issue Tracker](https://gitlab.com/Alamantus/book-tracker/issues)
|
||||
- [Issue Tracker](https://gitlab.com/Alamantus/Readlebee/issues)
|
||||
- For adding and tracking feature requests, feedback, and bug reports.
|
||||
- [Main Repo on GitLab](https://gitlab.com/Alamantus/book-tracker)
|
||||
- [Main Repo on GitLab](https://gitlab.com/Alamantus/Readlebee)
|
||||
- Where all changes are made "official".
|
||||
- [Mirror Repo on GitHub](https://github.com/Alamantus/book-tracker)
|
||||
- [Mirror Repo on GitHub](https://github.com/Alamantus/Readlebee)
|
||||
- Gets changes from GitLab pushed to it so people who prefer GitHub can contribute there as well. Pull requests and issues created here will also be addressed.
|
||||
|
||||
## Development
|
||||
|
@ -30,7 +30,7 @@ To develop, you'll need to know how to use a terminal or shell on your computer.
|
|||
Clone the repo to your computer with [Git](https://git-scm.com/) by running:
|
||||
|
||||
```
|
||||
git clone https://gitlab.com/Alamantus/book-tracker.git
|
||||
git clone https://gitlab.com/Alamantus/Readlebee.git
|
||||
```
|
||||
|
||||
Then run use [Yarn](https://yarnpkg.com) to install the dependencies:
|
||||
|
@ -45,19 +45,24 @@ Alternatively, you can use the NPM that's included with Node:
|
|||
npm install
|
||||
```
|
||||
|
||||
This install process will compile the sass into CSS at `public/css/index.css` and turn the svg in `images`
|
||||
into PNGs in `public/images` after the dependencies are installed. (Note: This runs even if you install new packages.)
|
||||
In the future, this postinstall process will also set up the database tables.
|
||||
Once installed, make sure that the images are processed from their original form:
|
||||
|
||||
```
|
||||
npm run process-images
|
||||
```
|
||||
|
||||
Finally, copy the `config.example.json` files in `app/` and `server/` folders into a new `config.json` file in each.
|
||||
These config files are not saved to the project, so you can put your server/database info in there safely.
|
||||
|
||||
## Usage
|
||||
|
||||
After everything's installed, run the "start" NPM script to build and serve the front end:
|
||||
After everything's installed, run the "dev" NPM script to build and watch the front end and run the back end:
|
||||
|
||||
```
|
||||
npm start
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Then use your browser to navigate to http://localhost:1234 to view the website.
|
||||
Then use your browser to navigate to http://localhost:3000 to view the website.
|
||||
|
||||
When you make a change, you need to stop the server with `Ctrl+C` and re-run the script.
|
||||
|
||||
|
@ -115,10 +120,10 @@ the current user's home folder using Git like so:
|
|||
|
||||
```
|
||||
cd ~
|
||||
git clone https://gitlab.com/Alamantus/book-tracker.git && cd book-tracker
|
||||
git clone https://gitlab.com/Alamantus/Readlebee.git && cd Readlebee
|
||||
```
|
||||
|
||||
This will download the entire project source code into a `book-tracker` folder.
|
||||
This will download the entire project source code into a `Readlebee` folder.
|
||||
|
||||
#### Step 3: Configure the Project
|
||||
|
||||
|
@ -136,7 +141,7 @@ the `config.example.json` looks like with some explanations of each field:
|
|||
"port": 3000 # the port that the server will serve the app from.
|
||||
"dbhost": "localhost" # Where the postgres server is
|
||||
"dbport": 5432 # What port the postgres server uses
|
||||
"dbname": "book-tracker" # The name of the database book-tracker will use to make tables and store data in
|
||||
"dbname": "Readlebee" # The name of the database Readlebee will use to make tables and store data in
|
||||
"dbuser": "root" # The username with access to your postgres database
|
||||
"dbpass": "password" # The password for the username above
|
||||
... # more to come
|
||||
|
@ -159,7 +164,7 @@ and do any other things that need to be done to get the project set up and usabl
|
|||
Run the following to start the server:
|
||||
|
||||
```
|
||||
sudo npm start-production
|
||||
sudo npm start
|
||||
```
|
||||
|
||||
Then it'll be running on your server's localhost at the port you specified in the config!
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
{
|
||||
"siteName": "book-tracker"
|
||||
"siteName": "Readlebee"
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
Font license info
|
||||
|
||||
|
||||
## Typicons
|
||||
|
||||
(c) Stephen Hutchings 2012
|
||||
|
||||
Author: Stephen Hutchings
|
||||
License: SIL (http://scripts.sil.org/OFL)
|
||||
Homepage: http://typicons.com/
|
||||
|
||||
|
||||
## Fontelico
|
||||
|
||||
Copyright (C) 2012 by Fontello project
|
||||
|
||||
Author: Crowdsourced, for Fontello project
|
||||
License: SIL (http://scripts.sil.org/OFL)
|
||||
Homepage: http://fontello.com
|
||||
|
||||
|
||||
## Font Awesome
|
||||
|
||||
Copyright (C) 2016 by Dave Gandy
|
||||
|
||||
Author: Dave Gandy
|
||||
License: SIL ()
|
||||
Homepage: http://fortawesome.github.com/Font-Awesome/
|
||||
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
This webfont is generated by http://fontello.com open source project.
|
||||
|
||||
|
||||
================================================================================
|
||||
Please, note, that you should obey original font licenses, used to make this
|
||||
webfont pack. Details available in LICENSE.txt file.
|
||||
|
||||
- Usually, it's enough to publish content of LICENSE.txt file somewhere on your
|
||||
site in "About" section.
|
||||
|
||||
- If your project is open-source, usually, it will be ok to make LICENSE.txt
|
||||
file publicly available in your repository.
|
||||
|
||||
- Fonts, used in Fontello, don't require a clickable link on your site.
|
||||
But any kind of additional authors crediting is welcome.
|
||||
================================================================================
|
||||
|
||||
|
||||
Comments on archive content
|
||||
---------------------------
|
||||
|
||||
- /font/* - fonts in different formats
|
||||
|
||||
- /css/* - different kinds of css, for all situations. Should be ok with
|
||||
twitter bootstrap. Also, you can skip <i> style and assign icon classes
|
||||
directly to text elements, if you don't mind about IE7.
|
||||
|
||||
- demo.html - demo file, to show your webfont content
|
||||
|
||||
- LICENSE.txt - license info about source fonts, used to build your one.
|
||||
|
||||
- config.json - keeps your settings. You can import it back into fontello
|
||||
anytime, to continue your work
|
||||
|
||||
|
||||
Why so many CSS files ?
|
||||
-----------------------
|
||||
|
||||
Because we like to fit all your needs :)
|
||||
|
||||
- basic file, <your_font_name>.css - is usually enough, it contains @font-face
|
||||
and character code definitions
|
||||
|
||||
- *-ie7.css - if you need IE7 support, but still don't wish to put char codes
|
||||
directly into html
|
||||
|
||||
- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face
|
||||
rules, but still wish to benefit from css generation. That can be very
|
||||
convenient for automated asset build systems. When you need to update font -
|
||||
no need to manually edit files, just override old version with archive
|
||||
content. See fontello source code for examples.
|
||||
|
||||
- *-embedded.css - basic css file, but with embedded WOFF font, to avoid
|
||||
CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain.
|
||||
We strongly recommend to resolve this issue by `Access-Control-Allow-Origin`
|
||||
server headers. But if you ok with dirty hack - this file is for you. Note,
|
||||
that data url moved to separate @font-face to avoid problems with <IE9, when
|
||||
string is too long.
|
||||
|
||||
- animate.css - use it to get ideas about spinner rotation animation.
|
||||
|
||||
|
||||
Attention for server setup
|
||||
--------------------------
|
||||
|
||||
You MUST setup server to reply with proper `mime-types` for font files -
|
||||
otherwise some browsers will fail to show fonts.
|
||||
|
||||
Usually, `apache` already has necessary settings, but `nginx` and other
|
||||
webservers should be tuned. Here is list of mime types for our file extensions:
|
||||
|
||||
- `application/vnd.ms-fontobject` - eot
|
||||
- `application/x-font-woff` - woff
|
||||
- `application/x-font-ttf` - ttf
|
||||
- `image/svg+xml` - svg
|
|
@ -0,0 +1,85 @@
|
|||
/*
|
||||
Animation example, for spinners
|
||||
*/
|
||||
.animate-spin {
|
||||
-moz-animation: spin 2s infinite linear;
|
||||
-o-animation: spin 2s infinite linear;
|
||||
-webkit-animation: spin 2s infinite linear;
|
||||
animation: spin 2s infinite linear;
|
||||
display: inline-block;
|
||||
}
|
||||
@-moz-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-o-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@-ms-keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-moz-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: rotate(359deg);
|
||||
-o-transform: rotate(359deg);
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
|
||||
.icon-heart-outline:before { content: '\e803'; } /* '' */
|
||||
.icon-heart-filled:before { content: '\e804'; } /* '' */
|
||||
.icon-check:before { content: '\e807'; } /* '' */
|
||||
.icon-plus:before { content: '\e808'; } /* '' */
|
||||
.icon-loading:before { content: '\e839'; } /* '' */
|
||||
.icon-external:before { content: '\f08e'; } /* '' */
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,7 @@
|
|||
|
||||
.icon-heart-outline { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-heart-filled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-check { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-loading { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-external { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
|
@ -0,0 +1,18 @@
|
|||
[class^="icon-"], [class*=" icon-"] {
|
||||
font-family: 'icons';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
|
||||
/* fix buttons height */
|
||||
line-height: 1em;
|
||||
|
||||
/* you can be more comfortable with increased icons size */
|
||||
/* font-size: 120%; */
|
||||
}
|
||||
|
||||
.icon-heart-outline { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-heart-filled { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-check { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-plus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-loading { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
||||
.icon-external { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
|
|
@ -0,0 +1,63 @@
|
|||
@font-face {
|
||||
font-family: 'icons';
|
||||
src: url('../font/icons.eot?51482644');
|
||||
src: url('../font/icons.eot?51482644#iefix') format('embedded-opentype'),
|
||||
url('../font/icons.woff2?51482644') format('woff2'),
|
||||
url('../font/icons.woff?51482644') format('woff'),
|
||||
url('../font/icons.ttf?51482644') format('truetype'),
|
||||
url('../font/icons.svg?51482644#icons') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
|
||||
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
|
||||
/*
|
||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||
@font-face {
|
||||
font-family: 'icons';
|
||||
src: url('../font/icons.svg?51482644#icons') format('svg');
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
[class^="icon-"]:before, [class*=" icon-"]:before {
|
||||
font-family: "icons";
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
speak: none;
|
||||
|
||||
display: inline-block;
|
||||
text-decoration: inherit;
|
||||
width: 1em;
|
||||
margin-right: .2em;
|
||||
text-align: center;
|
||||
/* opacity: .8; */
|
||||
|
||||
/* For safety - reset parent styles, that can break glyph codes*/
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
|
||||
/* fix buttons height, for twitter bootstrap */
|
||||
line-height: 1em;
|
||||
|
||||
/* Animation center compensation - margins should be symmetric */
|
||||
/* remove if not needed */
|
||||
margin-left: .2em;
|
||||
|
||||
/* you can be more comfortable with increased icons size */
|
||||
/* font-size: 120%; */
|
||||
|
||||
/* Font smoothing. That was taken from TWBS */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
/* Uncomment for 3D effect */
|
||||
/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
|
||||
}
|
||||
|
||||
.icon-heart-outline:before { content: '\e803'; } /* '' */
|
||||
.icon-heart-filled:before { content: '\e804'; } /* '' */
|
||||
.icon-check:before { content: '\e807'; } /* '' */
|
||||
.icon-plus:before { content: '\e808'; } /* '' */
|
||||
.icon-loading:before { content: '\e839'; } /* '' */
|
||||
.icon-external:before { content: '\f08e'; } /* '' */
|
|
@ -0,0 +1,313 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head><!--[if lt IE 9]><script language="javascript" type="text/javascript" src="//html5shim.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
|
||||
<meta charset="UTF-8"><style>/*
|
||||
* Bootstrap v2.2.1
|
||||
*
|
||||
* Copyright 2012 Twitter, Inc
|
||||
* Licensed under the Apache License v2.0
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
||||
*/
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
}
|
||||
.clearfix:before,
|
||||
.clearfix:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
a:focus {
|
||||
outline: thin dotted #333;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
a:hover,
|
||||
a:active {
|
||||
outline: 0;
|
||||
}
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
margin: 0;
|
||||
font-size: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
button,
|
||||
input {
|
||||
*overflow: visible;
|
||||
line-height: normal;
|
||||
}
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
color: #333;
|
||||
background-color: #fff;
|
||||
}
|
||||
a {
|
||||
color: #08c;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
color: #005580;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.row {
|
||||
margin-left: -20px;
|
||||
*zoom: 1;
|
||||
}
|
||||
.row:before,
|
||||
.row:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.row:after {
|
||||
clear: both;
|
||||
}
|
||||
[class*="span"] {
|
||||
float: left;
|
||||
min-height: 1px;
|
||||
margin-left: 20px;
|
||||
}
|
||||
.container,
|
||||
.navbar-static-top .container,
|
||||
.navbar-fixed-top .container,
|
||||
.navbar-fixed-bottom .container {
|
||||
width: 940px;
|
||||
}
|
||||
.span12 {
|
||||
width: 940px;
|
||||
}
|
||||
.span11 {
|
||||
width: 860px;
|
||||
}
|
||||
.span10 {
|
||||
width: 780px;
|
||||
}
|
||||
.span9 {
|
||||
width: 700px;
|
||||
}
|
||||
.span8 {
|
||||
width: 620px;
|
||||
}
|
||||
.span7 {
|
||||
width: 540px;
|
||||
}
|
||||
.span6 {
|
||||
width: 460px;
|
||||
}
|
||||
.span5 {
|
||||
width: 380px;
|
||||
}
|
||||
.span4 {
|
||||
width: 300px;
|
||||
}
|
||||
.span3 {
|
||||
width: 220px;
|
||||
}
|
||||
.span2 {
|
||||
width: 140px;
|
||||
}
|
||||
.span1 {
|
||||
width: 60px;
|
||||
}
|
||||
[class*="span"].pull-right,
|
||||
.row-fluid [class*="span"].pull-right {
|
||||
float: right;
|
||||
}
|
||||
.container {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
*zoom: 1;
|
||||
}
|
||||
.container:before,
|
||||
.container:after {
|
||||
display: table;
|
||||
content: "";
|
||||
line-height: 0;
|
||||
}
|
||||
.container:after {
|
||||
clear: both;
|
||||
}
|
||||
p {
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
.lead {
|
||||
margin-bottom: 20px;
|
||||
font-size: 21px;
|
||||
font-weight: 200;
|
||||
line-height: 30px;
|
||||
}
|
||||
small {
|
||||
font-size: 85%;
|
||||
}
|
||||
h1 {
|
||||
margin: 10px 0;
|
||||
font-family: inherit;
|
||||
font-weight: bold;
|
||||
line-height: 20px;
|
||||
color: inherit;
|
||||
text-rendering: optimizelegibility;
|
||||
}
|
||||
h1 small {
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
color: #999;
|
||||
}
|
||||
h1 {
|
||||
line-height: 40px;
|
||||
}
|
||||
h1 {
|
||||
font-size: 38.5px;
|
||||
}
|
||||
h1 small {
|
||||
font-size: 24.5px;
|
||||
}
|
||||
body {
|
||||
margin-top: 90px;
|
||||
}
|
||||
.header {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
margin-left: -480px;
|
||||
background-color: #fff;
|
||||
border-bottom: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
z-index: 10;
|
||||
}
|
||||
.footer {
|
||||
color: #ddd;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
.footer a {
|
||||
color: #ccc;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.the-icons {
|
||||
font-size: 14px;
|
||||
line-height: 24px;
|
||||
}
|
||||
.switch {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 10px;
|
||||
color: #666;
|
||||
}
|
||||
.switch input {
|
||||
margin-right: 0.3em;
|
||||
}
|
||||
.codesOn .i-name {
|
||||
display: none;
|
||||
}
|
||||
.codesOn .i-code {
|
||||
display: inline;
|
||||
}
|
||||
.i-code {
|
||||
display: none;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'icons';
|
||||
src: url('./font/icons.eot?47391532');
|
||||
src: url('./font/icons.eot?47391532#iefix') format('embedded-opentype'),
|
||||
url('./font/icons.woff?47391532') format('woff'),
|
||||
url('./font/icons.ttf?47391532') format('truetype'),
|
||||
url('./font/icons.svg?47391532#icons') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
|
||||
.demo-icon
|
||||
{
|
||||
font-family: "icons";
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
speak: none;
|
||||
|
||||
display: inline-block;
|
||||
text-decoration: inherit;
|
||||
width: 1em;
|
||||
margin-right: .2em;
|
||||
text-align: center;
|
||||
/* opacity: .8; */
|
||||
|
||||
/* For safety - reset parent styles, that can break glyph codes*/
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
|
||||
/* fix buttons height, for twitter bootstrap */
|
||||
line-height: 1em;
|
||||
|
||||
/* Animation center compensation - margins should be symmetric */
|
||||
/* remove if not needed */
|
||||
margin-left: .2em;
|
||||
|
||||
/* You can be more comfortable with increased icons size */
|
||||
/* font-size: 120%; */
|
||||
|
||||
/* Font smoothing. That was taken from TWBS */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
/* Uncomment for 3D effect */
|
||||
/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="css/animation.css"><!--[if IE 7]><link rel="stylesheet" href="css/" + font.fontname + "-ie7.css"><![endif]-->
|
||||
<script>
|
||||
function toggleCodes(on) {
|
||||
var obj = document.getElementById('icons');
|
||||
|
||||
if (on) {
|
||||
obj.className += ' codesOn';
|
||||
} else {
|
||||
obj.className = obj.className.replace(' codesOn', '');
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container header">
|
||||
<h1>icons <small>font demo</small></h1>
|
||||
<label class="switch">
|
||||
<input type="checkbox" onclick="toggleCodes(this.checked)">show codes
|
||||
</label>
|
||||
</div>
|
||||
<div class="container" id="icons">
|
||||
<div class="row">
|
||||
<div class="the-icons span3" title="Code: 0xe803"><i class="demo-icon icon-heart-outline"></i> <span class="i-name">icon-heart-outline</span><span class="i-code">0xe803</span></div>
|
||||
<div class="the-icons span3" title="Code: 0xe804"><i class="demo-icon icon-heart-filled"></i> <span class="i-name">icon-heart-filled</span><span class="i-code">0xe804</span></div>
|
||||
<div class="the-icons span3" title="Code: 0xe807"><i class="demo-icon icon-check"></i> <span class="i-name">icon-check</span><span class="i-code">0xe807</span></div>
|
||||
<div class="the-icons span3" title="Code: 0xe808"><i class="demo-icon icon-plus"></i> <span class="i-name">icon-plus</span><span class="i-code">0xe808</span></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="the-icons span3" title="Code: 0xe839"><i class="demo-icon icon-loading animate-spin"></i> <span class="i-name">icon-loading</span><span class="i-code">0xe839</span></div>
|
||||
<div class="the-icons span3" title="Code: 0xf08e"><i class="demo-icon icon-external"></i> <span class="i-name">icon-external</span><span class="i-code">0xf08e</span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container footer">Generated by <a href="http://fontello.com">fontello.com</a></div>
|
||||
</body>
|
||||
</html>
|
Binary file not shown.
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Copyright (C) 2019 by original authors @ fontello.com</metadata>
|
||||
<defs>
|
||||
<font id="icons" horiz-adv-x="1000" >
|
||||
<font-face font-family="icons" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
|
||||
<missing-glyph horiz-adv-x="1000" />
|
||||
<glyph glyph-name="heart-outline" unicode="" d="M508-66q-17 0-29 9-26 17-85 58t-154 112-134 110q-106 106-106 264 0 116 82 198t198 82q143 0 228-118 38 55 99 86t129 32q117 0 198-82t81-198q0-158-106-264-38-38-133-110t-155-113-83-57q-13-9-30-9z m-228 729q-72 0-124-51t-52-125q0-114 76-190 79-79 328-248 248 169 327 248 76 76 76 190 0 73-51 125t-124 51q-73 0-125-51t-51-125q0-22-16-37t-36-15-37 15-15 37q0 73-52 125t-124 51z" horiz-adv-x="1015" />
|
||||
|
||||
<glyph glyph-name="heart-filled" unicode="" d="M456 487q0 95-67 161t-161 67-162-67-66-161q0-137 91-229 37-36 128-104t164-118l73-50q282 190 364 272 91 92 91 229 0 95-66 161t-161 67-161-67-67-161z" horiz-adv-x="911" />
|
||||
|
||||
<glyph glyph-name="check" unicode="" d="M625 676q38-20 49-63t-9-80l-260-469q-30-53-91-53-43 0-74 31l-209 207q-31 32-31 74t31 74 74 31 74-31l111-110 193 347q20 38 62 50t80-8z" horiz-adv-x="679" />
|
||||
|
||||
<glyph glyph-name="plus" unicode="" d="M729 454q44 0 74-31t31-73-31-73-74-30l-208 3 0-212q0-43-30-73t-75-31-73 31-30 73l3 212-212-3q-44 0-74 30t-30 73 30 73 74 31l212 0-3 209q0 42 30 73t73 31 75-31 30-73l0-209 208 0z" horiz-adv-x="834" />
|
||||
|
||||
<glyph glyph-name="loading" unicode="" d="M855 9c-189-190-520-172-705 13-190 190-200 494-28 695 11 13 21 26 35 34 36 23 85 18 117-13 30-31 35-76 16-112-5-9-9-15-16-22-140-151-145-379-8-516 153-153 407-121 542 34 106 122 142 297 77 451-83 198-305 291-510 222l0 1c236 82 492-24 588-252 71-167 37-355-72-493-11-15-23-29-36-42z" horiz-adv-x="1000" />
|
||||
|
||||
<glyph glyph-name="external" unicode="" d="M786 332v-178q0-67-47-114t-114-47h-464q-67 0-114 47t-47 114v464q0 66 47 113t114 48h393q7 0 12-5t5-13v-36q0-8-5-13t-12-5h-393q-37 0-63-26t-27-63v-464q0-37 27-63t63-27h464q37 0 63 27t26 63v178q0 8 5 13t13 5h36q8 0 13-5t5-13z m214 482v-285q0-15-11-25t-25-11-25 11l-98 98-364-364q-5-6-13-6t-12 6l-64 64q-6 5-6 12t6 13l364 364-98 98q-11 11-11 25t11 25 25 11h285q15 0 25-11t11-25z" horiz-adv-x="1000" />
|
||||
</font>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
"name": "icons",
|
||||
"css_prefix_text": "icon-",
|
||||
"css_use_suffix": false,
|
||||
"hinting": true,
|
||||
"units_per_em": 1000,
|
||||
"ascent": 850,
|
||||
"glyphs": [
|
||||
{
|
||||
"uid": "e15f0d620a7897e2035c18c80142f6d9",
|
||||
"css": "external",
|
||||
"code": 61582,
|
||||
"src": "fontawesome"
|
||||
},
|
||||
{
|
||||
"uid": "9bc2902722abb366a213a052ade360bc",
|
||||
"css": "loading",
|
||||
"code": 59449,
|
||||
"src": "fontelico"
|
||||
},
|
||||
{
|
||||
"uid": "3b00728aa97ad1a2581d414bd9d650bc",
|
||||
"css": "heart-outline",
|
||||
"code": 59395,
|
||||
"src": "typicons"
|
||||
},
|
||||
{
|
||||
"uid": "hi76m8qggwn5lbl286oeqp64q0n8kusy",
|
||||
"css": "heart-filled",
|
||||
"code": 59396,
|
||||
"src": "typicons"
|
||||
},
|
||||
{
|
||||
"uid": "43fl9m553j1z5937vfjz0lgolrlspxwl",
|
||||
"css": "check",
|
||||
"code": 59399,
|
||||
"src": "typicons"
|
||||
},
|
||||
{
|
||||
"uid": "1gf923f9wvaezxmfon515dglxa3drf0e",
|
||||
"css": "plus",
|
||||
"code": 59400,
|
||||
"src": "typicons"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -26,6 +26,7 @@ export class I18n {
|
|||
result = language[section][phrase];
|
||||
} else {
|
||||
console.error(`The translation for "${section}.${phrase}" is set up in neither the target nor default locale.`);
|
||||
result = `${section}.${phrase}`;
|
||||
}
|
||||
|
||||
return result;
|
||||
|
|
|
@ -12,6 +12,13 @@
|
|||
"login_button": "Log In!"
|
||||
},
|
||||
"search": {
|
||||
"header": "Search"
|
||||
"header": "Search",
|
||||
"people_header": "People",
|
||||
"series_header": "Series",
|
||||
"books_header": "Books"
|
||||
},
|
||||
"interaction": {
|
||||
"heart": "Like",
|
||||
"add": "Add to Shelf"
|
||||
}
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" style="height: 512px; width: 512px;"><path d="M0 0h512v512H0z" fill="#000" fill-opacity="1"></path><g class="" transform="translate(0,0)" style="touch-action: none;"><path d="M341.79 95.5L65.54 166.379l127.84 58.11 276.025-72.64L341.789 95.5zm-1.577 18.984l74.858 33.059-72.551 19.09-77.258-32.916 74.951-19.233zm142.813 52.395L194.864 242.71l-3.057.805h-.002l-.041.01-2.857-1.3L44.73 178.15l-.184-.092c-5.585-2.793-8.012-1.992-10.77.11-2.757 2.1-5.515 6.88-6.275 12.956-1.519 12.153 3.616 27.58 23.916 34.346l.412.139L193.338 288.5l173.235-45.588V212.45l76-18.345v28.806l42.173-11.097c-4.36-14.037-5.33-29.146-1.72-44.934zm-58.453 50.086l-40 9.656v103.186l21.947-21.948 18.053 12.498V216.965zm58.453 13.914l-40.453 10.646v45.385l42.173-11.098c-4.36-14.036-5.33-29.145-1.72-44.933zM38.42 240.268c-1.803.036-3.177.782-4.642 1.898-2.758 2.101-5.516 6.88-6.276 12.957-1.519 12.153 3.616 27.579 23.916 34.346l.412.138L193.338 352.5l173.235-45.588v-45.387l-174.766 45.99-146.62-65.161a61.602 61.602 0 0 1-4.802-1.874 8.317 8.317 0 0 0-1.965-.212zm6.768 2.086l.021.008-.279-.125.258.117zm437.838 52.525l-40.453 10.646v45.385l42.173-11.097c-4.36-14.037-5.33-29.146-1.72-44.934zM38.42 304.268c-1.803.036-3.177.782-4.642 1.898-2.758 2.101-5.516 6.88-6.276 12.957-1.519 12.153 3.616 27.579 23.916 34.346l.412.138L193.338 416.5l173.235-45.588v-45.387l-174.766 45.99-146.62-65.161a61.602 61.602 0 0 1-4.802-1.874 8.317 8.317 0 0 0-1.965-.212zm6.768 2.086l.021.008-.279-.125.258.117zm363.437 24.855l-38.863 38.863 68.834-18.115-29.97-20.748z" fill="#1c4aff" fill-opacity="1"></path></g></svg>
|
Before Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,171 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Vectornator for iOS (http://vectornator.io/) -->
|
||||
|
||||
<svg
|
||||
xmlns:vectornator="http://vectornator.io"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;"
|
||||
xml:space="preserve"
|
||||
version="1.1"
|
||||
viewBox="0 0 300 300"
|
||||
id="svg35"
|
||||
sodipodi:docname="logo.svg"
|
||||
inkscape:version="0.92.3 (2405546, 2018-03-11)"><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1409"
|
||||
inkscape:window-height="706"
|
||||
id="namedview37"
|
||||
showgrid="false"
|
||||
inkscape:zoom="3.1466666"
|
||||
inkscape:cx="159.44177"
|
||||
inkscape:cy="145.08419"
|
||||
inkscape:window-x="2398"
|
||||
inkscape:window-y="336"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg35" />
|
||||
<metadata
|
||||
id="metadata2">
|
||||
<vectornator:setting
|
||||
key="DisplayWhiteBackground"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="RulersVisible"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="SnapToEdges"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="Units"
|
||||
value="Pixels" />
|
||||
<vectornator:setting
|
||||
key="DynamicGuides"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToPoints"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="CMYKEnabledKey"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToGrid"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToGuides"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="ShowGrid"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="GridSpacing"
|
||||
value="36" />
|
||||
<rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata>
|
||||
<defs
|
||||
id="defs4">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</defs>
|
||||
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#a8a69d;fill-rule:evenodd;stroke:#000000;stroke-width:1.99999988;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 13.015828,137.45049 -0.05325,0.31198 c -2.3424,13.64456 14.685877,27.82663 38.033528,31.67592 v 0 c 23.347658,3.84931 44.172214,-4.09105 46.514197,-17.73454 l 0.0537,-0.31306 c 2.341983,-13.6435 -14.686294,-27.82555 -38.033945,-31.67484 v 0 c -23.346167,-3.84996 -44.171796,4.08997 -46.514197,17.73454 z"
|
||||
id="path16-2" /><g
|
||||
aria-label="R"
|
||||
transform="scale(1.0003218,0.9996783)"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:23.13201714px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="text846"><path
|
||||
style="font-size:231.32017517px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 126.69967,200.50442 c 0.0745,15.27498 0.14903,30.54996 0.22354,45.82494 -12.49129,0.61686 -24.98258,1.23371 -37.473869,1.85057 L 87.367459,93.195408 C 115.24254,79.967138 147.50422,74.998582 177.91485,80.87038 c 22.47966,3.610153 43.6798,20.02107 48.30255,43.03278 4.49286,21.6303 0.0608,46.83888 -17.68154,61.51671 -6.51367,2.22791 -4.82192,6.73663 -2.74468,11.57077 5.47865,16.36913 10.95729,32.73827 16.43594,49.1074 -12.02865,2.69874 -24.0573,5.39747 -36.08595,8.09621 -6.55407,-17.58033 -13.10814,-35.16067 -19.66221,-52.741 -11.29285,3.21499 -32.36923,-3.46717 -39.77929,-0.94883 z m -0.008,-82.58128 v 49.0634 c 17.15143,2.72318 36.70492,5.17538 52.04704,-4.85772 12.26897,-8.66675 14.1217,-28.8505 4.1484,-39.88195 -13.14417,-9.78245 -44.71293,-14.82749 -56.19544,-4.32373 z"
|
||||
id="path892"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccc" /></g><path
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#cbcbc8;fill-rule:evenodd;stroke:#000000;stroke-width:1.99999988;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 33.490129,92.247454 -0.208448,0.230093 C 24.168717,102.5449 30.947522,123.68065 48.421604,139.68639 v 0 c 17.474082,16.00574 39.026229,20.81979 48.139201,10.75243 l 0.208866,-0.23116 c 9.112559,-10.06628 2.333741,-31.20204 -15.140341,-47.20777 v 0 C 64.156337,86.994566 42.603101,82.1801 33.490129,92.247454 Z"
|
||||
id="path22-0" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:2.00000024;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 210.27192,95.07012 -6.79491,-6.015245 c 10.37293,-11.248091 27.07499,-25.33294 40.79397,-31.758866 -7.81099,5.476783 -29.9057,30.283694 -33.99906,37.774111 z"
|
||||
id="path26-5"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:2.00000024;stroke-linecap:round;stroke-linejoin:round"
|
||||
d="m 197.32038,85.159528 -7.4218,-3.410681 c 9.03223,-12.347898 24.78673,-27.718823 37.68916,-35.654171 -8.1278,7.527117 -27.08439,31.249253 -30.26736,39.064852 z"
|
||||
id="path28-1"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" /><path
|
||||
d="m 244.31608,144.47883 41.79781,22.62945 -50.01717,1.53219 z"
|
||||
id="path963"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#fbe656;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 237.88836,149.55246 44.58502,16.79979 -48.23254,0.83906 z"
|
||||
id="path965"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#a8a69d;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 226.7531,163.69746 57.62848,3.32996 -58.09079,4.35874 z"
|
||||
id="path967"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#cbcbc8;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 287.25306,166.80437 -67.08721,1.25177 -20.43937,63.82173 65.5193,-0.93427 z"
|
||||
id="path969"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#fbe656;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 237.85941,175.65768 -0.0811,0.0163 c -3.54921,0.70853 -5.41293,6.18905 -4.16261,12.24099 v 0 c 1.25032,6.05193 5.14091,10.3833 8.68981,9.67477 l 0.0814,-0.0163 c 3.5489,-0.70853 5.41262,-6.18905 4.1623,-12.24098 v 0 c -1.25002,-6.05163 -5.1406,-10.38331 -8.68981,-9.67478 z"
|
||||
id="path973"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#a8a69d;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 244.27717,189.80126 -0.26297,-0.0106 c -11.48327,-0.4605 -21.05307,4.9944 -21.37485,12.18403 v 0 c -0.32148,7.18962 8.7269,13.39134 20.21018,13.85184 l 0.26297,0.0105 c 11.48328,0.4605 21.0532,-4.9947 21.37482,-12.18403 v 0 c 0.32163,-7.18962 -8.72657,-13.39134 -20.21015,-13.85184 z"
|
||||
id="path975"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#030300;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 245.88154,190.00228 -1.14929,25.692 c -1.82388,0.11127 -3.71662,-0.0797 -5.39393,-0.32159 l 1.13964,-25.48164 c 1.93528,-0.14331 3.57707,-0.10386 5.40358,0.11123 z m 2.86554,0.34356 c 1.85015,0.33483 3.55464,0.85893 5.16594,1.47283 l -1.016,22.70868 c -1.66106,0.48311 -3.40445,0.86857 -5.27872,1.05421 0.37583,-8.41193 0.75245,-16.82382 1.12878,-25.23572 z m -11.16602,-0.0961 -1.09742,24.53381 c -8.29264,-2.01078 -14.17662,-7.07932 -13.91848,-12.84706 0.25785,-5.76803 6.57368,-10.34714 15.0159,-11.68675 z m 19.15588,2.84257 c 4.80773,2.56562 7.8638,6.35301 7.67728,10.52225 -0.18652,4.16923 -3.57068,7.71612 -8.59044,9.88754 z"
|
||||
id="path977"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#fbe656;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round"
|
||||
sodipodi:nodetypes="cccccccccccccccscc" /><path
|
||||
d="m 252.54478,176.57748 -0.0757,-0.0292 c -3.31127,-1.27723 -7.83304,2.35706 -10.09996,8.11726 v 0 c -2.26692,5.7602 -1.42041,11.46495 1.89085,12.74218 l 0.076,0.0292 c 3.31096,1.27723 7.83274,-2.35706 10.09966,-8.11726 v 0 c 2.26692,-5.7599 1.42041,-11.46495 -1.89086,-12.74218 z"
|
||||
id="path979"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#cbcbc8;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 230.02607,200.61553 c 0.0543,-1.21454 -0.48373,-2.22234 -1.20207,-2.25128 -0.71835,-0.0286 -1.34471,0.93246 -1.399,2.14701 -0.0543,1.21454 0.48403,2.22234 1.20207,2.25097 0.71835,0.0289 1.34471,-0.93215 1.399,-2.1467 z"
|
||||
id="path981"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#030300;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 220.60102,188.8034 c 0.79646,0.77273 3.13967,2.24495 3.81459,2.95228 2.10347,2.20457 1.90835,3.18796 1.90835,3.18796 l 1.53712,-1.16331 c 0,0 -1.35768,-1.71453 -2.39177,-2.46255 -2.45661,-1.77691 -5.85895,-3.47577 -4.86829,-2.51438 z"
|
||||
id="path983"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#030300;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /><path
|
||||
d="m 223.25576,186.99304 c 0.70327,0.85771 2.86374,2.58369 3.45391,3.36245 1.83929,2.42728 1.5341,3.38294 1.5341,3.38294 l 1.65835,-0.98369 c 0,0 -1.15412,-1.85677 -2.09653,-2.7163 -2.23827,-2.04182 -5.42469,-4.11197 -4.54983,-3.0454 z"
|
||||
id="path985"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#030300;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round" /></svg>
|
After Width: | Height: | Size: 9.7 KiB |
|
@ -0,0 +1,201 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Vectornator for iOS (http://vectornator.io/) -->
|
||||
|
||||
<svg
|
||||
xmlns:vectornator="http://vectornator.io"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
style="clip-rule:evenodd;fill-rule:evenodd;stroke-linecap:round;stroke-linejoin:round"
|
||||
xml:space="preserve"
|
||||
version="1.1"
|
||||
viewBox="0 0 1280 640"
|
||||
id="svg35"
|
||||
sodipodi:docname="social.svg"
|
||||
inkscape:version="0.92.3 (2405546, 2018-03-11)"
|
||||
width="1280"
|
||||
height="640"
|
||||
inkscape:export-filename="C:\Users\rantenesse\Downloads\Personal Downloads\Readlebee_social.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1409"
|
||||
inkscape:window-height="706"
|
||||
id="namedview37"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.5"
|
||||
inkscape:cx="604.74915"
|
||||
inkscape:cy="250.8411"
|
||||
inkscape:window-x="2398"
|
||||
inkscape:window-y="336"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg35" />
|
||||
<metadata
|
||||
id="metadata2">
|
||||
<vectornator:setting
|
||||
key="DisplayWhiteBackground"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="RulersVisible"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="SnapToEdges"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="Units"
|
||||
value="Pixels" />
|
||||
<vectornator:setting
|
||||
key="DynamicGuides"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToPoints"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="CMYKEnabledKey"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToGrid"
|
||||
value="0" />
|
||||
<vectornator:setting
|
||||
key="SnapToGuides"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="ShowGrid"
|
||||
value="1" />
|
||||
<vectornator:setting
|
||||
key="GridSpacing"
|
||||
value="36" />
|
||||
<rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata>
|
||||
<defs
|
||||
id="defs4">
|
||||
|
||||
|
||||
|
||||
|
||||
</defs>
|
||||
|
||||
|
||||
<g
|
||||
id="g1062"
|
||||
transform="matrix(1.0509747,0,0,1.0515096,-40.385398,-54.950942)"
|
||||
style="stroke-width:0.95125568"><path
|
||||
id="path16-2-9"
|
||||
d="m 45.043411,337.26593 -0.07953,0.46571 c -3.498477,20.36786 21.933998,41.53808 56.804729,47.28409 v 0 c 34.87075,5.74604 65.97313,-6.1069 69.47099,-26.47315 l 0.0802,-0.46732 c 3.49786,-20.36628 -21.93462,-41.53647 -56.80535,-47.28248 v 0 c -34.86852,-5.74701 -65.972506,6.10529 -69.470983,26.47315 z"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#a8a69d;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:round;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0" /><path
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:231.32017517px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;clip-rule:evenodd;fill:#fbe656;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:5.15128279;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 214.89609,431.29312 c 0.11131,22.79432 0.22265,45.58865 0.33397,68.38297 -18.66229,0.92052 -37.32458,1.84102 -55.98686,2.76154 L 156.13281,271.1596 c 41.64605,-19.74008 89.84579,-27.15449 135.28001,-18.3922 33.58515,5.3873 65.25867,29.87674 72.16518,64.21632 6.71244,32.27815 0.0908,69.89604 -26.41666,91.79925 -9.73158,3.32463 -7.20406,10.05284 -4.10061,17.26666 8.18523,24.42709 16.37046,48.85419 24.55569,73.28127 -17.9711,4.02723 -35.94219,8.05445 -53.91328,12.08169 -9.79194,-26.23451 -19.58388,-52.46905 -29.37582,-78.70356 -16.8718,4.79762 -48.36042,-5.17394 -59.43123,-1.41591 z m -0.0119,-123.23318 v 73.21561 c 25.62465,4.06371 54.83804,7.72304 77.75954,-7.24901 18.33014,-12.93309 21.09817,-43.0526 6.19781,-59.51444 -19.63771,-14.59801 -66.8022,-22.12655 -83.95735,-6.45216 z"
|
||||
id="path892"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccc" /><path
|
||||
id="path22-0-4"
|
||||
d="m 75.622673,269.78931 -0.311326,0.34346 c -13.61061,15.028 -3.486168,46.5783 22.612136,70.4708 v 0 c 26.098307,23.8925 58.287377,31.07864 71.897997,16.05064 l 0.31195,-0.34507 c 13.61,-15.02639 3.48554,-46.5767 -22.61276,-70.46919 v 0 C 121.42399,261.94808 89.233295,254.76131 75.622673,269.78931 Z"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#cbcbc8;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:round;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0" /><path
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path26-5-0"
|
||||
d="M 339.65399,274.00283 329.5055,265.0236 c 15.49242,-16.79054 40.43768,-37.81563 60.92758,-47.40791 -11.66606,8.17545 -44.66548,45.20585 -50.77909,56.38714 z"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.43418884;stroke-linecap:round;stroke-linejoin:round" /><path
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path28-1-5"
|
||||
d="m 320.3103,259.20884 -11.08478,-5.09128 c 13.49003,-18.43227 37.02006,-41.37715 56.29041,-53.2226 -12.13923,11.23607 -40.45172,46.64718 -45.20563,58.31388 z"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.43418884;stroke-linecap:round;stroke-linejoin:round" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#fbe656;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path963-7"
|
||||
d="m 390.50044,347.75746 62.42685,33.78001 -74.70283,2.28717 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#a8a69d;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path965-4"
|
||||
d="m 380.90036,355.3311 66.58967,25.07781 -72.0374,1.2525 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#cbcbc8;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path967-9"
|
||||
d="m 364.26936,376.44598 86.07065,4.97078 -86.76114,6.5065 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#fbe656;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path969-2"
|
||||
d="m 454.62869,381.08381 -100.19768,1.86858 -30.52709,95.2696 97.85594,-1.39463 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#a8a69d;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path973-1"
|
||||
d="m 380.85712,394.29955 -0.12113,0.0243 c -5.3009,1.05766 -8.08444,9.23868 -6.21704,18.27269 v 0 c 1.86741,9.03399 7.67817,15.49963 12.97861,14.44197 l 0.12158,-0.0243 c 5.30043,-1.05766 8.08398,-9.23867 6.21657,-18.27266 v 0 C 391.96875,399.708 386.158,393.2419 380.8571,394.29956 Z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path975-2"
|
||||
d="m 390.44232,415.41232 -0.39276,-0.0158 c -17.15076,-0.68741 -31.44367,7.45537 -31.92427,18.18766 v 0 c -0.48014,10.73228 13.03401,19.98986 30.18478,20.67727 l 0.39277,0.0157 c 17.15078,0.68741 31.44387,-7.45582 31.92423,-18.18766 v 0 c 0.48036,-10.73227 -13.03352,-19.98986 -30.18475,-20.67727 z" /><path
|
||||
sodipodi:nodetypes="cccccccccccccccscc"
|
||||
style="clip-rule:evenodd;opacity:1;fill:#fbe656;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path977-4"
|
||||
d="m 392.83852,415.71238 -1.71652,38.35163 c -2.72404,0.16609 -5.55093,-0.11898 -8.05607,-0.48006 l 1.70211,-38.0376 c 2.89042,-0.21393 5.3425,-0.15504 8.07048,0.16603 z m 4.2798,0.51285 c 2.76329,0.49982 5.30902,1.28217 7.71556,2.19857 l -1.51743,33.89827 c -2.48087,0.72117 -5.0847,1.29656 -7.88401,1.57367 0.56132,-12.55687 1.12382,-25.11368 1.68588,-37.67051 z m -16.67693,-0.14345 -1.63905,36.62273 c -12.38542,-3.00158 -21.1734,-10.56762 -20.78785,-19.17739 0.38511,-8.6102 9.81808,-15.44564 22.4269,-17.44534 z m 28.61014,4.24323 c 7.18055,3.82983 11.74493,9.48343 11.46635,15.70704 -0.27857,6.2236 -5.33297,11.51821 -12.83019,14.75959 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#cbcbc8;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path979-7"
|
||||
d="m 402.79035,395.67257 -0.11305,-0.0436 c -4.94553,-1.90657 -11.69899,3.5185 -15.08473,12.11701 v 0 c -3.38575,8.59851 -2.12145,17.11425 2.82406,19.02083 l 0.11351,0.0436 c 4.94506,1.90658 11.69854,-3.51849 15.08428,-12.117 v 0 c 3.38575,-8.59807 2.12145,-17.11425 -2.82407,-19.02084 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path981-1"
|
||||
d="m 369.15768,431.55527 c 0.0811,-1.81301 -0.72247,-3.31739 -1.79534,-3.36059 -1.07289,-0.0427 -2.00839,1.39192 -2.08947,3.20494 -0.0811,1.813 0.72292,3.31739 1.79534,3.36013 1.07289,0.0432 2.00838,-1.39147 2.08947,-3.20448 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path983-7"
|
||||
d="m 355.08095,413.92276 c 1.18955,1.15349 4.68924,3.35115 5.69726,4.40701 3.14163,3.29085 2.85021,4.75881 2.85021,4.75881 l 2.29576,-1.73653 c 0,0 -2.02776,-2.55935 -3.57222,-3.67596 -3.66906,-2.65247 -8.7506,-5.18844 -7.27101,-3.75333 z" /><path
|
||||
style="clip-rule:evenodd;opacity:1;fill:#030300;fill-rule:evenodd;stroke:#000000;stroke-width:3.4341886;stroke-linecap:butt;stroke-linejoin:round"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path985-8"
|
||||
d="m 359.04593,411.22036 c 1.05036,1.28034 4.27712,3.85679 5.15856,5.01928 2.74707,3.62331 2.29124,5.04987 2.29124,5.04987 l 2.47683,-1.4684 c 0,0 -1.72373,-2.77169 -3.13127,-4.05474 -3.34295,-3.04793 -8.10201,-6.13813 -6.79536,-4.54601 z" /><path
|
||||
d="m 454.89948,447.09308 c 3.23201,15.69763 13.18656,23.54646 29.86367,23.54646 10.20159,-0.0583 19.7822,-3.75243 27.34271,-9.14614 l 11.82911,21.40586 c -13.20074,8.83938 -28.63225,13.54278 -43.05022,13.62191 -15.34179,-0.2077 -30.40921,-4.92764 -40.52926,-15.1787 -10.977,-11.92756 -14.8531,-27.99161 -14.93182,-42.42253 0.18422,-14.51829 3.59213,-29.21522 12.60479,-39.50355 11.13791,-12.11288 27.55187,-16.26165 41.8867,-16.34629 12.50426,0.22696 25.25127,2.59287 34.71165,9.72993 10.09158,7.93516 14.08092,20.51022 14.15615,31.7196 -0.0222,7.27784 -1.2881,14.39603 -3.10272,20.82207 z m 24.82175,-41.25493 c -16.35502,0.8116 -23.4341,8.27789 -25.4035,22.76806 l 47.7043,-0.19461 v -1.55679 c -0.8204,-15.21817 -9.29989,-20.89336 -22.3008,-21.01666 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:4.75627851;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path917"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccc" /><path
|
||||
d="m 607.65901,493.79678 c -0.65529,-3.31547 -0.8975,-7.09022 -1.35743,-10.11913 -13.85197,5.38763 -27.71318,12.40555 -41.8867,10.89753 -20.36543,-2.16683 -32.07698,-12.17847 -32.19071,-30.9412 4.88052,-27.71873 23.37045,-30.59779 44.98942,-32.88719 8.79104,-0.90812 17.84064,-1.55679 27.14879,-1.94599 -1.13021,-13.22888 -10.56075,-19.55733 -21.33119,-19.65446 -3.36127,0 -6.65792,0.38919 -9.88991,1.16759 -8.65079,2.49079 -17.11209,5.09692 -22.49471,11.87052 l -13.76832,-21.01666 c 13.97058,-13.11195 33.01191,-17.99563 50.22526,-18.09769 13.38651,0.14971 27.26306,3.55336 35.48734,13.42732 8.08423,10.44738 10.21754,23.82754 10.47168,35.61157 1.51103,21.60878 -0.85903,41.15074 2.52095,59.93641 z m -2.52095,-28.8006 c -0.40676,-6.6001 -0.38784,-12.25853 -0.38784,-19.07068 -11.20304,1.47318 -21.88377,1.56707 -32.38462,4.86497 -5.42983,1.70529 -9.55686,5.71367 -9.50208,10.89752 0.0758,7.16653 6.08602,11.09252 12.02303,10.89754 10.78203,-0.35411 20.75646,-4.19939 30.25151,-7.58935 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:4.75627851;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path919"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccsccccccccccccccsssc" /><path
|
||||
d="m 748.91062,489.90481 -26.56703,1.55679 -1.74528,-12.25973 c -4.52479,4.02172 -9.69599,7.20017 -15.51359,9.53535 -12.14537,4.37007 -25.19804,4.66622 -36.45694,0.1946 -20.33988,-8.80313 -26.67061,-31.01807 -26.76094,-50.20648 0.19928,-15.48249 3.73497,-31.13751 13.76831,-42.03333 8.31599,-8.69482 19.6357,-13.15118 30.63934,-13.23271 11.53982,0.31838 22.54766,4.05148 31.60894,9.72993 l -0.58175,-43.97931 31.60894,-1.75139 z m -54.10365,-22.76805 c 7.88607,0 15.83679,-3.11358 23.85214,-9.34075 l -0.58175,-40.67113 c -6.88406,-4.16731 -14.53899,-7.35563 -22.10687,-7.39475 -16.19462,-0.0837 -24.99139,14.73724 -25.20959,29.18981 0.7859,16.61988 8.1171,28.01187 24.04607,28.21682 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:4.75627851;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path921"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccscc" /><path
|
||||
d="m 793.91734,490.09941 -29.66975,1.55679 -2.71488,-142.25168 31.80286,-1.75138 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:4.75627851;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path923"
|
||||
inkscape:connector-curvature="0" /><path
|
||||
sodipodi:nodetypes="cccccsccccccsccsss"
|
||||
d="m 949.7787,393.96763 c 9.40072,-6.92458 20.79424,-10.44459 31.41503,-10.50833 12.00026,0.18385 23.66447,4.45212 31.22107,12.64892 9.8431,10.96692 12.5429,25.97305 12.6048,38.91975 -0.2684,15.64014 -3.9701,31.28191 -13.5744,42.61713 -8.3308,9.27193 -19.80697,14.66925 -31.22108,14.59489 -11.71843,-0.0764 -22.76553,-4.27645 -31.60894,-10.50832 l -0.58176,8.36774 -27.53663,1.55679 -2.71488,-142.25168 31.80287,-1.75138 z m 23.07647,14.78951 c -8.70411,-0.0379 -16.61927,3.7427 -23.07647,8.17314 l 0.19392,41.25493 c 6.68773,4.35067 14.13753,9.0075 21.52511,7.78395 18.512,-3.06599 24.75981,-14.31481 24.4339,-30.3574 -0.33079,-16.2834 -7.58884,-26.78724 -23.07646,-26.85462 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;fill:#fbe656;fill-opacity:1;stroke:#000000;stroke-width:4.75627851;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path927"
|
||||
inkscape:connector-curvature="0" /><path
|
||||
d="m 834.05789,447.09308 c 3.23201,15.69763 13.18656,23.54646 29.86367,23.54646 10.20159,-0.0583 19.7822,-3.75243 27.3427,-9.14614 l 11.82912,21.40586 c -13.20074,8.83938 -28.63225,13.54278 -43.05022,13.62191 -15.34179,-0.2077 -30.40921,-4.92764 -40.52926,-15.1787 -10.977,-11.92756 -14.8531,-27.99161 -14.93182,-42.42253 0.18422,-14.51829 3.59213,-29.21522 12.60479,-39.50355 11.13791,-12.11288 27.55186,-16.26165 41.8867,-16.34629 12.50425,0.22696 25.25127,2.59287 34.71165,9.72993 10.09157,7.93516 14.08092,20.51022 14.15615,31.7196 -0.0222,7.27784 -1.2881,14.39603 -3.10272,20.82207 z m 24.82175,-41.25493 c -16.35503,0.8116 -23.4341,8.27789 -25.4035,22.76806 l 47.7043,-0.19461 v -1.55679 c -0.8204,-15.21817 -9.29989,-20.89336 -22.3008,-21.01666 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;clip-rule:evenodd;fill:#fbe656;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.75627851;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path917-3"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccc" /><path
|
||||
d="m 1063.3887,447.09308 c 3.232,15.69763 13.1866,23.54646 29.8638,23.54646 10.2015,-0.0583 19.7821,-3.75243 27.3426,-9.14614 l 11.8292,21.40586 c -13.2009,8.83938 -28.6324,13.54278 -43.0502,13.62191 -15.3419,-0.2077 -30.4092,-4.92764 -40.5293,-15.1787 -10.9771,-11.92756 -14.8531,-27.99161 -14.9318,-42.42253 0.1841,-14.51829 3.592,-29.21522 12.6047,-39.50355 11.138,-12.11288 27.5518,-16.26165 41.8867,-16.34629 12.5043,0.22696 25.2513,2.59287 34.7117,9.72993 10.0915,7.93516 14.0809,20.51022 14.1561,31.7196 -0.023,7.27784 -1.2881,14.39603 -3.1027,20.82207 z m 24.8218,-41.25493 c -16.3551,0.8116 -23.4341,8.27789 -25.4036,22.76806 l 47.7044,-0.19461 v -1.55679 c -0.8204,-15.21817 -9.2998,-20.89336 -22.3008,-21.01666 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;clip-rule:evenodd;fill:#fbe656;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.75627851;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path917-3-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccc" /><path
|
||||
d="m 1175.5839,447.09308 c 3.232,15.69763 13.1865,23.54646 29.8636,23.54646 10.2016,-0.0583 19.7822,-3.75243 27.3428,-9.14614 l 11.829,21.40586 c -13.2007,8.83938 -28.6322,13.54278 -43.0502,13.62191 -15.3417,-0.2077 -30.4092,-4.92764 -40.5292,-15.1787 -10.977,-11.92756 -14.8531,-27.99161 -14.9319,-42.42253 0.1843,-14.51829 3.5922,-29.21522 12.6048,-39.50355 11.138,-12.11288 27.5519,-16.26165 41.8868,-16.34629 12.5042,0.22696 25.2513,2.59287 34.7116,9.72993 10.0916,7.93516 14.0809,20.51022 14.1562,31.7196 -0.023,7.27784 -1.2881,14.39603 -3.1028,20.82207 z m 24.8217,-41.25493 c -16.355,0.8116 -23.434,8.27789 -25.4035,22.76806 l 47.7043,-0.19461 v -1.55679 c -0.8203,-15.21817 -9.2999,-20.89336 -22.3008,-21.01666 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:600;font-stretch:normal;font-size:171.95491028px;line-height:1.25;font-family:Remissis;-inkscape-font-specification:'Remissis Semi-Bold';letter-spacing:0px;word-spacing:0px;clip-rule:evenodd;fill:#fbe656;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.75627851;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path917-3-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccc" /></g></svg>
|
After Width: | Height: | Size: 20 KiB |
|
@ -5,7 +5,7 @@
|
|||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>book-tracker</title>
|
||||
<title>Readlebee</title>
|
||||
<meta name="description" content="An attempt at a viable alternative to Goodreads">
|
||||
<meta name="keywords" content="books, tracking, lists, bookshelves, bookshelf, rating, reviews, reading">
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
|||
<meta name="theme-color" content="#000000">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-title" content="book-tracker">
|
||||
<meta name="apple-mobile-web-app-title" content="Readlebee">
|
||||
<link rel="apple-touch-icon" href="../dev/images/favicon.png">
|
||||
|
||||
<link rel="stylesheet" href="styles/index.scss">
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "book-tracker",
|
||||
"short_name": "book-tracker",
|
||||
"name": "Readlebee",
|
||||
"short_name": "Readlebee",
|
||||
"icons": [
|
||||
{
|
||||
"src": "../dev/images/icon-128.png",
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
.search-result {
|
||||
.search-image {
|
||||
width: 100%;
|
||||
max-width: 300px;
|
||||
}
|
||||
}
|
|
@ -36,7 +36,14 @@
|
|||
|
||||
// @import '../../node_modules/picnic/src/plugins/dropimage/plugin';
|
||||
// @import '../../node_modules/picnic/src/plugins/tabs/plugin';
|
||||
// @import '../../node_modules/picnic/src/plugins/tooltip/plugin';
|
||||
@import '../../node_modules/picnic/src/plugins/tooltip/plugin';
|
||||
|
||||
// Custom global styling
|
||||
@import './picnic-customizations/custom';
|
||||
|
||||
// View styling
|
||||
@import './search';
|
||||
|
||||
// Icons
|
||||
@import '../fonts/fontello/css/animation.css';
|
||||
@import '../fonts/fontello/css/icons.css';
|
||||
|
|
|
@ -26,14 +26,14 @@ footer nav {
|
|||
}
|
||||
|
||||
// External links
|
||||
// a[href^="http://"]:not([href*="localhost"]):not([href*="guts.plus"]):after,
|
||||
// a[href^="https://"]:not([href*="localhost"]):not([href*="guts.plus"]):after{
|
||||
// font-family: "icons";
|
||||
// font-size: 70%;
|
||||
// vertical-align: top;
|
||||
// margin-left: 3px;
|
||||
// content: "\f08e";
|
||||
// }
|
||||
a[href^="http://"]:after,
|
||||
a[href^="https://"]:after{
|
||||
font-family: "icons";
|
||||
font-size: 70%;
|
||||
vertical-align: top;
|
||||
margin-left: 3px;
|
||||
content: "\f08e";
|
||||
}
|
||||
|
||||
.menu ul li {
|
||||
display: inline-block;
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
import html from 'choo/html';
|
||||
|
||||
import headerImage from '../../dev/images/header.png';
|
||||
|
||||
import { homeView } from './home';
|
||||
import { loginView } from './login';
|
||||
import { searchView } from './search';
|
||||
|
@ -30,7 +32,7 @@ export const viewManager = (state, emit) => {
|
|||
<nav>
|
||||
<div class="brand">
|
||||
<a href="/">
|
||||
<span class="title">Unnamed Book Tracker</span>
|
||||
<span><img src=${headerImage} alt="Readlebee"></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
@ -58,8 +60,8 @@ export const viewManager = (state, emit) => {
|
|||
<footer>
|
||||
<nav>
|
||||
<div class="links">
|
||||
<a href="https://gitlab.com/Alamantus/book-tracker" class="pseudo button">Repo</a>
|
||||
<a href="https://gitter.im/book-tracker/general" class="pseudo button">Chat</a>
|
||||
<a href="https://gitlab.com/Alamantus/Readlebee" class="pseudo button">Repo</a>
|
||||
<a href="https://gitter.im/Readlebee/community" class="pseudo button">Chat</a>
|
||||
</div>
|
||||
</nav>
|
||||
</footer>
|
||||
|
|
|
@ -7,7 +7,11 @@ export class SearchController extends ViewController {
|
|||
super(state, 'search', {
|
||||
lastSearch: undefined,
|
||||
done: false,
|
||||
results: [],
|
||||
results: {
|
||||
humans: [],
|
||||
series: [],
|
||||
works: [],
|
||||
},
|
||||
});
|
||||
|
||||
// If using controller methods in an input's onchange or onclick instance,
|
||||
|
@ -15,8 +19,12 @@ export class SearchController extends ViewController {
|
|||
// or use `onclick=${() => controller.submit()}` to maintain the 'this' of the class instead.
|
||||
}
|
||||
|
||||
get doneSearching() {
|
||||
return this.state.done;
|
||||
}
|
||||
|
||||
get results() {
|
||||
return [];
|
||||
return this.state.results;
|
||||
}
|
||||
|
||||
get hasQuery() {
|
||||
|
@ -33,7 +41,6 @@ export class SearchController extends ViewController {
|
|||
return fetch(`/api/search?for=${searchTerm}&lang=${this.appState.language}`)
|
||||
.then(response => response.json())
|
||||
.then(responseJSON => {
|
||||
console.log(responseJSON);
|
||||
this.state.results = responseJSON;
|
||||
this.state.done = true;
|
||||
});
|
||||
|
|
|
@ -19,24 +19,80 @@ export const searchView = (state, emit) => {
|
|||
// This one doesn't have the problem right now, but it's good to remember.
|
||||
return [
|
||||
html`<section>
|
||||
<h2 class="subtitle">${i18n.__('search.header')}</h2>
|
||||
<h1 class="title">${i18n.__('search.header')}</h1>
|
||||
|
||||
<article>
|
||||
${controller.state.done ? 'Done searching' : 'Loading...'}
|
||||
${controller.doneSearching ? null : html`<h2><i class="icon-loading animate-spin"></i></h2>`}
|
||||
|
||||
${controller.results.map(result => {
|
||||
return html`<div class="card">
|
||||
<header>
|
||||
${result.covers.map(cover => {
|
||||
return html`<img src=${cover} />`;
|
||||
})}
|
||||
<h1 class="title">${result.title}</h1>
|
||||
${result.authors.map(author => {
|
||||
return html`<h2 class="subtitle">${author}</h2>`;
|
||||
})}
|
||||
</header>
|
||||
</div>`;
|
||||
})}
|
||||
${controller.results.works < 1
|
||||
? null
|
||||
: [
|
||||
html`<h2>${i18n.__('search.books_header')}</h2>`,
|
||||
controller.results.works.map(result => {
|
||||
return html`<div class="flex search-result">
|
||||
<div class="sixth-500">
|
||||
${result.image ? html`<img src=${result.image.url} class="search-image">` : null}
|
||||
</div>
|
||||
<div class="half-500">
|
||||
<h3 class="title">${result.name}</h3>
|
||||
${result.description ? html`<h4 class="subtitle">${result.description}</h4>` : null}
|
||||
<span data-tooltip=${i18n.__('interaction.heart')}>
|
||||
<button class="pseudo">
|
||||
<i class="pseudo icon-heart-outline"></i>
|
||||
</button>
|
||||
</span>
|
||||
<span data-tooltip=${i18n.__('interaction.add')}>
|
||||
<button class="pseudo">
|
||||
<i class="pseudo icon-plus"></i>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
<div class="third-500">
|
||||
<a class="small pseudo button" href=${result.link} target="_blank">See details on Inventaire</a>
|
||||
</div>
|
||||
</div>`;
|
||||
}),
|
||||
]}
|
||||
|
||||
${controller.results.series.length < 1
|
||||
? null
|
||||
: [
|
||||
html`<h2>${i18n.__('search.series_header')}</h2>`,
|
||||
controller.results.series.map(result => {
|
||||
return html`<div class="flex search-result">
|
||||
<div class="sixth-500">
|
||||
${result.image ? html`<img src=${result.image.url} class="search-image">` : null}
|
||||
</div>
|
||||
<div class="half-500">
|
||||
<h3 class="title">${result.name}</h3>
|
||||
${result.description ? html`<h4 class="subtitle">${result.description}</h4>` : null}
|
||||
</div>
|
||||
<div class="third-500">
|
||||
<a href=${result.link} target="_blank">See details on Inventaire</a>
|
||||
</div>
|
||||
</div>`;
|
||||
}),
|
||||
]}
|
||||
|
||||
${controller.results.humans.length < 1
|
||||
? null
|
||||
: [
|
||||
html`<h2>${i18n.__('search.people_header')}</h2>`,
|
||||
controller.results.humans.map(result => {
|
||||
return html`<div class="flex search-result">
|
||||
<div class="sixth-500">
|
||||
${result.image ? html`<img src=${result.image.url} class="search-image">` : null}
|
||||
</div>
|
||||
<div class="half-500">
|
||||
<h3 class="title">${result.name}</h3>
|
||||
${result.description ? html`<h4 class="subtitle">${result.description}</h4>` : null}
|
||||
</div>
|
||||
<div class="third-500">
|
||||
<a href=${result.link} target="_blank">See details on Inventaire</a>
|
||||
</div>
|
||||
</div>`;
|
||||
}),
|
||||
]}
|
||||
</article>
|
||||
</section>`,
|
||||
];
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"name": "book-tracker",
|
||||
"name": "readlebee",
|
||||
"version": "0.0.0",
|
||||
"description": "An attempt at a viable alternative to Goodreads",
|
||||
"main": "index.html",
|
||||
"repository": "https://gitlab.com/Alamantus/book-tracker.git",
|
||||
"repository": "https://gitlab.com/Alamantus/Readlebee.git",
|
||||
"author": "Robbie Antenesse <dev@alamantus.com>",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
|
|
|
@ -10,12 +10,18 @@ if (!fs.existsSync('./dev/images')) {
|
|||
fs.mkdirSync('./dev/images');
|
||||
}
|
||||
|
||||
const favicon = sharp('./app/images/book-pile.svg');
|
||||
const favicon = sharp('./app/images/logo.svg');
|
||||
const social = sharp('./app/images/social.svg');
|
||||
|
||||
// sharp('./src/images/social.jpg').toFile(folder + 'social.jpg', (err, info) => {
|
||||
// if (err) return console.error(err);
|
||||
// console.log(info);
|
||||
// });
|
||||
social.clone().resize(1280, 640).flatten({ background: '#ffffff' }).toFile(folder + 'social.png', (err, info) => {
|
||||
if (err) return console.error(err);
|
||||
console.log(info);
|
||||
});
|
||||
|
||||
social.clone().trim(1).resize(null, 48).toFile(folder + 'header.png', (err, info) => {
|
||||
if (err) return console.error(err);
|
||||
console.log(info);
|
||||
});
|
||||
|
||||
favicon.clone().resize(32, 32).toFile(folder + 'favicon.png', (err, info) => {
|
||||
if (err) return console.error(err);
|
||||
|
|
|
@ -124,7 +124,7 @@ class SearchController {
|
|||
: null
|
||||
),
|
||||
image: (
|
||||
hasImage && typeof human.image.url !== 'undefined'
|
||||
hasImage && typeof work.image.url !== 'undefined'
|
||||
? human.image
|
||||
: null
|
||||
),
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<footer>
|
||||
<nav>
|
||||
<div class="links">
|
||||
<a href="https://gitlab.com/Alamantus/book-tracker" class="pseudo button">Repo</a>
|
||||
<a href="https://gitter.im/book-tracker/general" class="pseudo button">Chat</a>
|
||||
<a href="https://gitlab.com/Alamantus/Readlebee" class="pseudo button">Repo</a>
|
||||
<a href="https://gitter.im/Readlebee/community" class="pseudo button">Chat</a>
|
||||
</div>
|
||||
</nav>
|
||||
</footer>
|
||||
|
|
Loading…
Reference in New Issue