Code Monkey home page Code Monkey logo

quotes's Introduction

quotes ๐Ÿ’ฌ

When-you-want-something-all-the-universe

1. A collection of inspiring quotations.

The quotes are contained in a single file: quotes.json so they can easily be used in any project.

2. A module that returns a quote when invoked.

Hex pm npm package version pub package Elixir Build Status Dart Build Status codecov.io contributions welcome HitCount

Why?

We needed a reliable and fast source of quotes. There are many ways of getting quotes including several APIs but we wanted something that had zero latency and could (optionally) work offline so we collated a database from various sources.

gandhi-future-depends-on-what-you-do-today

What?

  1. A file containing thousands of inspiring quotes.
  2. A module for returning a random quote.

The quotes.json file can be used in any project or programming language.

The module can be used from Elixir and JavaScript (Node.js, TypeScript, etc.)
(if you want to use it in a different language please tell us)

How?

There are two ways you can use this project:
A. Use the quotes.json list of quotes directly (for any purpose).
B. Use the module to return a random quote; sample code below.


Elixir

Our original reason for creating the quotes project was to show a practical code reuse example in Elixir.
If you are learning Elixir (and we think you should be), follow along with the code reuse tutorial to see this module in action!

Install from Hex.pm

The quotes Elixir module is available on hex.pm: hex.pm/packages/quotes
Add quotes to your list of deps (dependencies) in mix.exs:

def deps do
  [
    {:quotes, "~> 1.0.7"}
  ]
end

In your terminal run the command:

mix deps.get

That will download the module into your project's deps directory.

Usage in Elixir

To get a random quote from the list invoke:

iex> Quotes.random()

You will receive a Map with an "author" and "text" fields. e.g:

%{
  "author" => "Peter Drucker",
  "text" => "The best way to predict your future is to create it."
}

Some of the quotes have been augmented with a "source" and "tags":

%{
  "author" => "Peter Drucker",
  "source" => "https://www.goodreads.com/quotes/784267",
  "tags" => "time, management",
  "text" => "Until we can manage time, we can manage nothing else."
}

random_by_tag - get a random quote by a specific tag e.g: Quotes.random_by_tag("time")

iex> Quotes.random_by_tag("time")
%{
  "author" => "Leo Tolstoy",
  "text" => "The two most powerful warriors are patience and time."
}

iex> Quotes.random_by_tag("curious")
%{
  "author" => "Albert Einstein",
  "source" => "https://www.goodreads.com/quotes/11458",
  "tags" => "talent, curious, curiosity, passion",
  "text" => "I have no special talent. I am only passionately curious."
}

Dart

Install from Dart packages

dart pub get quotesy

Dart sample code

  • Get the whole list of quotes.
import 'package:quotesy/quotesy.dart';

final quotesArray = await Quotes.list();
[
  {
  "author": "Peter Drucker",
  "text": "The best way to predict your future is to create it."
  }
]
  • Get the list of quotes from a specific author.
import 'package:quotesy/quotesy.dart';

final authorQuotesArray = await Quotes.byAuthor("Peter Drucker");
[
  {
  "author": "Peter Drucker",
  "text": "The best way to predict your future is to create it."
  }
]
  • Get a random quote.
import 'package:quotesy/quotesy.dart';

final randomQuote = await Quotes.random();
{
  "author": "Zig Ziglar",
  "text": "Positive thinking will let you do everything better than negative thinking will."
}
  • Get a random quote from an author.
import 'package:quotesy/quotesy.dart';

final randomQuote = await Quotes.singleRandomByAuthor("William Shakespeare");
{
  "author": "William Shakespeare",
  "text": "Speak low, if you speak love."
}

JavaScript / Node.js

Install from NPM

npm install quotesy --save

Node.js Sample Code:

// Get Random Quote:
const quotes = require("quotesy");
quotes.random(); // expect an object of the following form:
{
  "author": "Peter Drucker",
  "text": "The best way to predict your future is to create it."
}

// get a random quote featuring a desired tag e.g: "time"
quotes.random_by_tag("time");
{
  "author": "Leo Tolstoy",
  "text": "The two most powerful warriors are patience and time."
}

You can always filter the json based on your own custom function:

// Array of quotes with 12 words
const json = require("quotesy").parse_json();
const buddha_quotes = json.filter(function (item) {
  return item.text.split(" ").length <= 12;
});

// Array of quotes for author Buddha
const json = require("quotesy").parse_json;
const buddha_quotes = json.filter(function (item) {
  return item.author === "Buddha";
});

React.js Sample Code:

// Get Random Quote:
import quotes from 'quotesy'

class RandomQuote extends Component {
   state = {
      quote: quotes.random()
   }

   render(){
   const { author, text } = this.state.quote
     return(
       <blockquote>
       	{text}
       <cite>-{author}/cite>
       </blockquote>

     )
   }
}


Need a Different Programming Language ...?

Want to add an example in your preferred programming language?
Please comment on this issue: quotes/issues/6



Contributing

As with all @dwyl projects, contributions are very much welcome!
There are 3 ways of contributing to the quotes project:

  1. Curate
  2. Add
  3. Share

1. Curate the Existing Quotes

Read through the existing quotes and check they are accurate, insightful and inspires positive action. Accuracy means no misquotes or misattributions (attributing a quote to an author when in fact they never said/wrote it). Insightful means it gives us some insight that we can apply to our own lives. Inspires positive action is vital, we aren't interested in quotes with a negative tone.

For example, consider the following quote which is not included in our list:

"Happiness in intelligent people is the rarest thing I know.โ€ ~ Ernest Hemingway

This quote is certainly interesting and it may even be true in certain cases; some of the most intelligent people in history have been utterly miserable for whatever reason. While the quote is insightful it's definitely not positive and does not inspire any action.

Improve Existing Quotes with Sources & Tags

Open the quotes.json file and scroll through the quotes.
If you find a quote that you like (that doesn't already have "source" or "tags") you can _enhance it with a source and tags.

For example, consider the following quote (before the addition of a source or tags):

{
  "author": "Albert Einstein",
  "text": "I have no special talent. I am only passionately curious."
},

To find a reputable source, simply copy paste the quote into your favourite search engine:

https://duckduckgo.com/?q=I+have+no+special+talent.+I+am+only+passionately+curious

duck-duck-go-search-for-einstein-quote

Click the link to visit the source and confirm that it's good.

https://www.goodreads.com/quotes/11458-i-have-no-special-talents-i-am-only-passionately-curious

goodreads-einstein-quote

We only need the part of the URL up to the end of the digits: https://www.goodreads.com/quotes/11458
(the rest is added to the URL for SEO purposes and is not required to find the resource)

Add the source and any relevant tags:

{
  "author": "Albert Einstein",
  "text": "I have no special talent. I am only passionately curious.",
  "source": "https://www.goodreads.com/quotes/11458",
  "tags": "talent, curious, curiosity, passion"
},

Open the quotes.json file in your web browser (while logged-in to GitHub):

github-click-pencil-icon-to-edit

Click the pencil icon to edit the file. Once in edit mode, locate the quote by searching for it:

locate-the-quote

Make the edit to add the "source" and "tags": update-the-quote

Scroll down to the bottom of the page till you see Commit changes
(or use your browser shortcut to go to the bottom e.g: the [End] key)

add-commit-message-and-branch-name

Write a descriptive commit message and give your branch and appropriate/obvious name:
e.g: add-source-and-tags-to-einstein-quote

Click the button that says "Propose file change".

Your browser will navigate to the "Open a pull request" page:

create-pull-request

Add a relevant description and click the "Create pull request" button.

Example: #7

pull-request-awaiting-review

Provided your changes/improvements pass the automated checks and are sensible,
they will be approved and merged by an existing member of the project:

pull-request-merged

Once you've contributed an improvement, you'll be invited to be a maintainer and will be able to approve other people's additions.

2. Add Quotes!

If there is a quote you find inspiring/motivating that is not already in the quotes.json file, please add it!

Guidelines for Good Quotes

Keep the length of quotes below 200 characters.

Avoid adding quotes that are essays; the shorter the quote the better.
For example:

"Here's to the crazy ones. The misfits. The rebels. The troublemakers. The round pegs in the square holes. The ones who see things differently. They're not fond of rules. And they have no respect for the status quo. You can quote them, disagree with them, glorify or vilify them. About the only thing you can't do is ignore them. Because they change things. They push the human race forward. And while some may see them as the crazy ones, we see genius. Because the people who are crazy enough to think they can change the world, are the ones who do." ~ Rob Siltanen

That quote is 101 words (547 characters); it's an essay. It was the script written by Siltanen for the Apple "Think Different" commercial. We prefer the short version (18 words | 85 characters):

"The people who are crazy enough to think they can change the world are the ones who do." ~ Rob Siltanen

There is definitely a place for longer quotes e.g: the "Think Different" Apple ad campaign.

apple-think-different-advert

Our purpose with this bank of quotes is to have brief quotes that take less than 10 seconds to read and are inspiring/motivating not distracting.

In this case the addition would be:

{
  "text": "The people who are crazy enough to think they can change the world are the ones who do.",
  "author": "Rob Siltanen",
  "source": "https://www.goodreads.com/quotes/597615",
  "tags": "change, world, apple, think, different"
}

Note: This is also a good example of a quote that has been misattributed. Given that Steve Jobs read the script in the Apple "Think Different" commercial, people often misattribute the quote to Steve. A minute of research and we are better informed: https://www.forbes.com/sites/onmarketing/2011/12/14/the-real-story-behind-apples-think-different-campaign
Jobs initially called the script โ€œsh*tโ€ ... Read the article, it's a fascinating insight into the creative process!

Avoid Quotes That Don't Inspire Action

Karl-Pilkington-quote-glass-houses

Karl Pilkington is often hilarious and even insightful, but this quote while amusing, does not inspire any action in the reader.

Film Quotes

Movies can often be thought provoking, insightful and positive. e.g:

do-or-do-not-yoda

Where a quote from a movie is relevant, add it like this:

{
  "text": "Do. Or do not. There is no try",
  "author": "Yoda",
  "source": "https://www.starwars.com/news/the-starwars-com-10-best-yoda-quotes",
  "tags": "fictional, movie, do, try, star wars"
},

3. Share!

  • Let others know about this bank of quotes by "starring" the project on GitHub! โญ๏ธ
  • If you have an interesting use case for quotes, please share!

Disclaimer for contributions

If you are thinking of contributing to this repository (hooray! ๐ŸŽ‰), please make sure you read the Contributing section of this repo.

There are many websites that already contain quotes and this repository is intended as a subset of uniquely inspiring quotes. See Avoid Quotes That Don't Inspire Action.

As such, we remind you that we will only be able to accept PRs that conform to the following key criteria:

  1. An issue has been opened to propose the quote, including why you find it particularly inspiring ๐Ÿ’ก
  2. That issue has received at least 2 'thumbs up' (:+1:) from people in the dwyl community.
  3. Your PR refers to the issue itself and has a clear title and description. Not "Updates Quotes".

Thank you again for your contributions to this and other dwyl repos, we very much appreciate it! โค๏ธ


Pull Request "Rejection"?

As noted above, this repo focusses on quotes that unequivocally inspire action.

If a quote just makes people think, but doesn't inspire action we may not merge your Pull Request ... ๐Ÿ˜ž

Please don't be personally offended. You're very welcome to fork the project and use it as the basis for your own list of quotes. Many people have forked: dwyl/quotes/network/members that is the beauty of Open Source. ๐ŸŒป

quotes's People

Contributors

abhideepd avatar ayushsaini121 avatar bhuvansingla avatar dana94 avatar dannya avatar dependabot[bot] avatar farazkhanfk7 avatar gregborrelly avatar iteles avatar jarvis-ank avatar joecampo avatar kanishkgpt avatar luchoturtle avatar mans00rahmed avatar moksh-shukla avatar n-musa avatar nelsonic avatar parsakargari avatar preetness avatar pscheid92 avatar sahilister avatar shaund16 avatar shinmen-munisai avatar simonlab avatar slig avatar spekulatius avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quotes's Issues

** (File.Error) could not read file "quotes.json": no such file or directory

When trying to use this in an Elixir project, we see the following error:

** (File.Error) could not read file "quotes.json": no such file or directory

This is because the quotes.json file has not bee explicitly exported.

Todo

  • Add files: ["lib/quotes.ex", "mix.exs", "README.md", "quotes.json"], to package() in mix.exs
  • Publish new version including the file!

Source Quote Data

Inspiring Quotes on Creating/Changing/Improving the World

Quotes about changing the world are hugely inspiring/motivating.

"Every day, create the world you want to live in." ~ Robin Chase

"Each person must live their life as a model for others." ~ Rosa Parks

"Never doubt that a small group of thoughtful committed citizens can change the world. Indeed, it is the only thing that ever has." ~ Margaret Mead

"The moment we decide to fulfil something, we can do anything." ~ Greta Thunberg

"It is never too late to be what you might have been." ~ George Eliot

"Knowing what must be done does away with fear.โ€ - Rosa Parks

"No one changes the world who isnโ€™t obsessed." - Billie Jean King

"When you want something, all the universe conspires in helping you to achieve it.โ€ ~ Paulo Coelho

"Nothing is impossible, the word itself says 'I'm possible'!โ€ ~ Audrey Hepburn

"She always wanted to believe in things." ~ Kazuo Ishiguro

"Champions keep playing until they get it right." ~ Billie Jean King

"Happiness is not something ready made. It comes from your own actions.โ€ ~ Dalai Lama XIV

https://www.ellevatenetwork.com/articles/7572-quotes-to-inspire-you-to-change-the-world

Todo

Maria Montessori Quotes

I've been reading "The Absorbent Mind" by Maria Montessori. There are many good passages but they aren't really quotes ... we need need to collate a few good quotes on her education philosophy/pedagogy and add them to our list!

Starting point: ๐Ÿ”

As always, only add the quotes we can find reliable sources for!

Todo โœ…

  • Add 10 - 20 quotes we find relevant/inspiring ๐Ÿ“
  • Create a PR ๐Ÿš€
  • Ship the new version of the package to NPM and Hex.pm ๐Ÿ“ฆ

Duplication through quote misattribution: Lincoln or Drucker

Searching the quotes.json file, I detected a duplicate quote attributed to two different authors.
As discussed in issue #41, we should check the attribution and remove the duplicated entry.

{
    "author": "Abraham Lincoln",
    "source": "https://www.goodreads.com/quotes/328848",
    "tags": "future, prediction, create, creation, life",
    "text": "The best way to predict your future is to create it."
}
{
    "author": "Peter Drucker",
    "text": "The best way to predict your future is to create it."
}

Feat: Create `Dart` Package for `Flutter` Example

We already have these quotes exported as a Hex and NPM package. โœ…
Now we would like to:

  • Export quotesy as Dart package.

Looks like the https://pub.dev/packages/quotes is already taken ...
(though not maintained ... https://github.com/rohanprasadofficial/quotes ๐Ÿ™„)
So we might need to name it quotesy again (like the NPM module)

https://pub.dev/packages/quotesy
image

  • Add docs for how to use the Dart package in README.md

Thankfully we have already done this: https://github.com/dwyl/dart_cid
So I don't expect this will take tooooo long. โณ ๐Ÿคž

@LuchoTurtle this would be in preparation for "How to use statuses in Flutter?" dwyl/statuses#10 ๐Ÿ’ญ

Sleep Quotes

Sleep is the single most important daily activity. It is the cornerstone of a healthy and effective life.

Todo

I think this one might be tricky because a lot of the quotes are about not sleeping. e.g:

"I'll sleep when I'm dead." ~ Warren Zevon

The science tells us that avoiding sleep will cause you die younger. So it's a self-fulfilling prophesy!

And some imply wakefulness is better than sleeping:

โ€œYou know you're in love when you can't fall asleep
because reality is finally better than your dreams
.โ€
~ Dr. Seuss

Don't get me wrong, I love this quote and can totally empathise with it. ๐Ÿ˜
However I'm not sure that it's inspiring... ๐Ÿค”
And it might be the opposite of promoting sleep;
It might tell people that it's "OK" to stay awake because reality is better than dreaming [sleeping] ...
Thoughts?

I think these are good:

"It is a common experience that a problem difficult at night is resolved in the morning after the committee of sleep has worked on it." ~ John Steinbeck

"Your future depends on your dreams, so go to sleep." ~ Mesut Barazany

"A well spent day brings happy sleep." ~ Leonardo da Vinci

Seems legit: https://www.goodreads.com/quotes/74114-as-a-well-spent-day-brings-happy-sleep-so-life

"Each night, when I go to sleep, I die.
And the next morning, when I wake up, I am reborn.
"
~ Mahatma Gandhi

Quotes on Asking Questions

Asking questions is essential to learning and progress in work and life.
We all ask questions when we are young and curious about the world.
Spend a few minutes with a 2-5 year old child and you'll see how many questions they ask!
Sadly, some adults lose their curiosity and stop asking questions.

โ€œThe greatest gift is not being afraid to question." ~ Ruby Dee

"Successful people ask better questions, and as a result, they get better answers." ~ Tony Robbins

Todo

Read through quotes about asking questions and extract the best ones.

Attribution of "... Life is about creating yourself" Quote?

The following quote:

"Life isn't about finding yourself. Life is about creating yourself."

Is attributed to [George] Bernard Shaw in the current version of quotes.json:

quotes/quotes.json

Lines 666 to 671 in db96789

{
"author": "Bernard Shaw",
"source": "https://www.goodreads.com/quotes/8727",
"tags": "meaning, creativity",
"text": "Life isn't about finding yourself. Life is about creating yourself."
},

https://quoteinvestigator.com/2021/09/28/create-yourself/ suggests it should be Sydney J. Harris

image

However the Goodreads page linked to in the source: https://www.goodreads.com/quotes/8727-life-isn-t-about-finding-yourself-life-is-about-creating-yourself indicates that it's an accepted "fact" ...

image

This is George's most "liked" quote ... https://www.goodreads.com/author/quotes/5217.George_Bernard_Shaw

image

Does it mean that he said (or wrote it...) or just that the Internet has liked it into being a fact? ๐Ÿคทโ€โ™‚๏ธ

What should we do? ignore or fix it?

annoyingly, Sydney J. Harris, does not appear to have this quote on Goodreads:
https://www.goodreads.com/author/quotes/169034.Sydney_J_Harris

image

So I'm inclined to leave it as-is, perhaps with an amendment to the author to include George's first name.

Future Oriented Quotes

My favourite quote about doing something today to build the future is:

  {
    "text": "The future depends on what you do today.",
    "author": "Mahatma Gandhi",
    "source": "https://www.goodreads.com/quotes/16418",
    "tags": "action, change, world, present, future, today"  
  }

Ironically this is the intro image for this repo and yet the quote is not (yet) in quotes.json ... ๐Ÿคฆโ€โ™‚
future-today
I will resolve this shortly ... ๐Ÿ“

There are loads of great Future related quotes we can add:
https://www.goodreads.com/quotes/tag/future

Todo

Question: How can I use this for my app?

I am relatively new in programming. I never worked with the work of others, that have been licensed. But since you have a lot of quotes, i consider to use them in my app.

There is just one question: As I said, i never worked with licensed works. This was because I am unsure how to give copyright. Now I really want to use it, so I wanted to ask if you might help me a bit.

Hacktoberfest = Quotefest | Proposal for a disclaimer

Given Hacktoberfest is upon us and this is a super easy repo to 'gain some points' on, I suggest we implement a disclaimer at the top of the readme that reminds people that all quotes have to be opened as an issue (i.e. proposed as a worthy quote with a small note on why they are inspired by this quote) and gets two thumbs up at least before being added as a PR, with the requisite link to the issue and description.

Otherwise, this repo is going to become a bit of a useless free-for-all of standard issue, uninspiring quotes, which is the exact opposite of the stated intention of this repo:

image

"In times of change learners inherit the earth" ~ Eric Hoffer

This is a superb quote about continuous learning:

"In times of change learners inherit the earth, while the learned find themselves beautifully equipped to deal with a world that no longer exists." ~ Eric Hoffer

Todo:

  • Create Pull Request to add the following quote to the quotes.json list:
  {
    "author": "Eric Hoffer",
    "source": "https://www.goodreads.com/quotes/10562",
    "tags": "change, learners, learned, learn, world",
    "text": "In times of change learners inherit the earth, while the learned find themselves beautifully equipped to deal with a world that no longer exists."
  },

Discovered via @cristianofromagio โค๏ธ via dwyl/javascript-todo-list-tutorial#27 :shipit:
cristianofromagio-quote

Functions to Access Quotes (Random, Tags, Author)

It's all well and good having a quotes.json file with a bunch of quotes.
But how are we going to access those quotes from Elixir?!

Story

As a person wanting to use thought-provoking quotes in my project,
I need an easy way of getting a single quote to display
so that the users of my app can be inspired/motivated to get stuff done!

Todo

  • Create an Elixir Module that has functions for returning a single quote:
    • random - get a random quote for any author or topic Quotes.random()
    • random_by_tag - get a random quote by a specific tag e.g: Quotes.tag("time")
    • author - get a random quote by a specific author e.g: Quotes.author("Einstein")
  • Helpers:
    • Quotes.parse_json() - opens quotes.json and parse it's contents into a List of Map.
    • Utils.count - returns the count of quotes, useful in testing Quotes.parse_json ๐Ÿ‘

Stoic Quotes

"The things you think about determine the quality of your mind.โ€ ~ Marcus Aurelius

i.e. if you're constantly thinking about what the media want you to think about, e.g. COVID, Celebrity Gossip, sports or short-term politics, your mind won't be very good ... ๐Ÿ™„

Todo

  • Collect a few (e.g. 20) quotes
  • Add them to the quotes.json file with the appropriate source and tags.
  • Create a pull request

Starting point for quotes:

Quotes on Ideas

There are many good quotes on ideas. We need to filter and record the best ones. ๐Ÿ’ก

Todo

Comb through all the popular sites that list quotes and capture the ones we find inspiring action:

Here's a starting point:

Note: all quotes must have a source and tags otherwise they are invalid. We don't accept any quotes that are "anonymous" or "Buddha" even if they are really good.

Quotes on Creativity

There are a bunch of great quotes on creativity! https://www.goodreads.com/quotes/tag/creativity
I think we should add as many (of the good ones as possible) because it's good to have a reminder that creativity is not something that anyone is born with, we all work on improving our creative muscles (skills).

Thankfully there is no copyright on what famous people have said so it's OK for us to use them.

This is a good shortlist: https://www.happier.com/blog/10-positive-quotes-to-inspire-creativity ๐Ÿ’ญ

Todo

  • Capture the 20 most action-oriented quotes on creativity.

Duplicate quotes through different reasons

Hello ๐Ÿ‘‹

First, I want to thank you for curating those quotes ๐ŸŽ‰

I just checked the quotes.json in the main branch and found multiple duplicates:

> jq '.[].text' quotes.json | sort | uniq -c | sort -nr | head

      2 "When you are content to be simply yourself and don't compare or compete, everybody will respect you."
      2 "There is no greater harm than that of time wasted."
      2 "The path to success is to take massive, determined action."
      2 "The best way to predict your future is to create it."
      2 "Life isn't about finding yourself. Life is about creating yourself."
      2 "He who obtains has little. He who scatters has much."
      2 "All difficult things have their origin in that which is easy, and great things in that which is small."
      1 "You, yourself, as much as anybody in the entire universe, deserve your love and affection."
      1 "You won't skid if you stay in a rut."
      1 "You will not be punished for your anger, you will be punished by your anger."

I checked the duplicates manually (see list below) and maybe we could agree on a solution for each case.
If so, I would happily volunteer with PRs to fix the issues.

1. Quote: When you are content to be simply yourself ...
Duplicated due to same author with different spellings: Lao Tzu vs Laozi.
Maybe we can settle for one spelling?

2. Quote: There is no greater harm than that of time wasted.
Same author โ€“ Michelangelo โ€“ but one entry with source and tags, the other without.
I guess we can remove the entry without source and tags.

3. Quote: The path to success is to take massive, determined action
Same author, but sometimes his full name is used, sometimes not: Anthony Robbins vs. Tony Robbins.
Tough one, but maybe we could migrate to something like Anthony "Tony" Robbins?

4. Quote: The best way to predict your future is to create it.
Same quote, but attributed to two different persons: Abraham Lincoln vs Peter Drucker.
Maybe we should fact-check it.

5. Quote: Life isn't about finding yourself. Life is about creating yourself.
Same author โ€“ Bernard Shaw โ€“ but one entry with source and tags, the other without.
I guess we can remove the entry without source and tags.

6. Quote: He who obtains has little. He who scatters has much.
Same quote, but attributed to two different persons: Lao Tzu vs. Richard Braunstein.
Maybe we should fact-check it.

7. Quote: All difficult things have their origin in that which is easy, and great things in that which is small.
Once again, different spelling of the name: Lao Tzu vs. Lao-Tzu.
Should be harmonized.

Duplication through quote misattribution: Lao Tzu or Richard Braunstein

Searching the quotes.json file, I detected a duplicate quote attributed to two different authors.
As discussed in issue #41, we should check the attribution and remove the duplicated entry.

{
    "author": "Lao Tzu",
    "text": "He who obtains has little. He who scatters has much."
}
{
    "author": "Richard Braunstein",
    "text": "He who obtains has little. He who scatters has much."
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.