App - Quotes app for mobile (Android, iOS) & web

Overview

5 seconds of emotion

Status

Website GitHub release (latest by date) GitHub Release Date GitHub commits since latest release (by date) GitHub last commit Codemagic build status

Download




Table of Contents

Presentation

fig.style is a quotes app and service featuring one quote each day. It's available on web, Android, iOS & more to come. You can find quotes in English or French at the moment. More languages will be added later.

You can also try the APIs at dev.fig.style.

What's different from existing apps ?

Its simplify and beautiful user interface is the first thing you will notice, but there are more. The goal is to make the app available everywhere someone would want to read a quote (mobile apps, web browsers, smartwatchs, chats, virtual assistant, ...) while sustaining high quality code. I want to minimize bugs.

Because I like building technologies with well-intended people, this app is open sourced and welcome contributions whatever its size. You can also just give your feedback or submit new quotes to the service. As a open source project management takes a lot of work and setup, you cannot run this app on you local environment yet. I'll have to develop and publish the API, create the developer admin panel and adapt the app's code first.

Even if this app is open source, its data is not, meaning you can't directly access to the database for security reasons. But you can interect with the data through the published apps and with the API soon.

About the data, this project is not only an app but also a quotes service. I want to build the simplest and most complete service possible. A service through its API, apps and extensions (e.g. Chrome/Firefox extensions), simple to start with thanks to REST endpoints (possibbly GraphQL and languages SDK later), complete because each quote can have an author, one or more references and some comments about the context.

Most quotes apps focus on books references but I often find outstanding quotes in Movies, TV series, Video Games, Animés, Comics, and so on. Today's culture is richer than ever and there're not good reason to limit ourselves to one medium.

Technologies

Frontend

I made the decision to go with Flutter for the mobile app (Android/iOS) and web for this project after I gathered information on all available options to build a multiplatform app. It allowed to maintain a single code base and simplified the development in some cases. It also complicated the code architecture and the repository structure must be thoroughly managed.

Backend

For the backend, the services uses Firestore for online storage. It's a flexible, scalable database for mobile, web and server development from Firebase and Google Cloud Platform (this sentence is from their official website).

Authentication

Firebase Auth handles users' account creation, connections, third-party authentication, email & password update, account deletion, among other scenarios.

Cloud Functions

Firebase Cloud Functions is used for security checks when updating user's account for example. It's used for statistics too and for delayed deletion.

More about why and how I made these devlopment decisions in future blog posts.

How to add a quote

You can freely add a quote to the app after creating an account. You can add a maximum of 30 quotes per day but you can save the excess as drafts. Next day you will be able to submit another 30.

Basic rules

The service is manually handled and is not an automated process, so a human will read and validate your quote if it respect some basic rules:

  • Your quote must be short (usually no more than 250 characters)
  • It must be understandable
  • It should provocate an emotion or welcome a reflexion

You may find these validation criterias not clearer enough and it's understandable because a quote's appreciation is completely subjective. A quote making you smile may not evoke the same emotion to someone else.

Thus, as a rule of thumb, I recommend to always submit your quote if you think it's good enough. You will always receive an explication if your quote is not accepted.

Tips

We can't assure you than every submission will be accepted but you can improve your chances with these tips:

  • Check the grammar, sentences' structure and ponctuation (a quote with a lot of mistakes is more likely to be rejected)
  • Provide a valid author (and if this author doesn't already exist in the database, give a good amount of information - see existing authors' page to have an idea of what knowledge is useful)
  • Give a valid reference (and if this reference doesn't already exist in the database, give a good amount of information - see existing references' page to have an idea of what knowledge is useful)
  • Correctly categorize the quote with available topics
  • Add a comment if the quote really needs some context

Avoid

On the contrary, a short list of usual rejections:

  • Hard to understand due to missing or partial information
  • Strong language, offensive words or ideas
  • Too ordinary (the sentence doesn't have any particularity - e.g.: The sun is red)

If you still have doubts, you can always open an issue here or send us an email through the app.

Whenever you're down, look up. It'll make your realize just how big and beautiful the world is.
Emma Green — Away

Sustainability

In order to pay for the development cost, the app will use different sources of income. Depending on which works the best, other sources may disapear.

  • The most straightforward will be ads but no ugly ones. They must not disturb the user experience or, at most, have little impact on it.
  • Open Source sponsoring will be added through GitHub sponsor or Open Collective
  • In-app purchases can be a little bonus for people wanting to support directly without leaving the app. It will also remove ads on top of adding custom Unsplash or hand drawing backgrounds.

Roadmap

A better roadmap will be available later. For now, it's just a bullet list in this document.

  • Start API development
  • Third-party sign in (when Flutter web hashtag issue is solved in stale channel)

Contribute

PLEASE READ

⚠️ This project is in early development stage so the developer part hasn't been built yet. You won't be able to contribute at the moment without explicit authorization.

Code styles

Repository code styles for better structure and reading.

Dart class

Rules for dart classes.

  • All imports at the top, ascending ordered alphabeticaly
  • Variables declared at the top of the state
class _DashboardState extends State<Dashboard> {
  User userAuth;
  bool canManage = false;
  // ...
}
  • Class methods in priority order:
    • Overrides (e.g. initState)
    • build method
    • Custom methods which return a widget
    • Other functions (e.g. auth functions, fetch data, ...)

License

Mozilla Public License 2.0.

Please read the LICENSE for more information.

Please ask if you have any doubt.

Privacy Policy

You can find the platform's privacy policy in this repo: TOS.md

Screenshots

The following screenshots was taken on the web application.

web homepage Home


web recent quotes Recent


web search author Search


web random quotes Random quotes




The following screenshots was taken on the mobile application.
Clicking on an author's name will show you their information.


Author Search Topics
Comments
  • Bump plist from 3.0.1 to 3.0.4 in /functions

    Bump plist from 3.0.1 to 3.0.4 in /functions

    Bumps plist from 3.0.1 to 3.0.4.

    Changelog

    Sourced from plist's changelog.

    3.0.4 / 2021-08-27

    3.0.3 / 2021-08-04

    • update xmldom to 0.6.0 to patch critical vulnerability (Mike Reinstein)
    • remove flaky saucelabs teseting badge (Mike Reinstein)

    3.0.2 / 2021-03-25

    • update xmldom to 0.5.0 to patch critical vulnerability (Mike Reinstein)
    • update saucelab credentials to point at mreinstein's saucelabs account (Mike Reinstein)
    • remove a bunch of test versions from the matrix because they weren't working in zuul + sauce (Mike Reinstein)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump tar from 4.4.13 to 4.4.15 in /functions

    Bump tar from 4.4.13 to 4.4.15 in /functions

    Bumps tar from 4.4.13 to 4.4.15.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump lodash from 4.17.15 to 4.17.19 in /functions

    Bump lodash from 4.17.15 to 4.17.19 in /functions

    Bumps lodash from 4.17.15 to 4.17.19.

    Release notes

    Sourced from lodash's releases.

    4.17.16

    Commits
    Maintainer changes

    This version was pushed to npm by mathias, a new releaser for lodash since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump date-and-time from 0.14.1 to 0.14.2 in /functions

    Bump date-and-time from 0.14.1 to 0.14.2 in /functions

    Bumps date-and-time from 0.14.1 to 0.14.2.

    Commits
    • 6dab608 Updated README.md
    • 0bda3b4 Bump version
    • 9e4b501 Fixed regular expression denial of service (ReDoS) vulnerability
    • 73103a3 Merge branch 'dependabot/npm_and_yarn/bl-4.0.3' into master
    • 93bf9da Bump bl from 4.0.2 to 4.0.3
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump node-fetch from 2.6.0 to 2.6.1 in /functions

    Bump node-fetch from 2.6.0 to 2.6.1 in /functions

    Bumps node-fetch from 2.6.0 to 2.6.1.

    Release notes

    Sourced from node-fetch's releases.

    v2.6.1

    This is an important security release. It is strongly recommended to update as soon as possible.

    See CHANGELOG for details.

    Changelog

    Sourced from node-fetch's changelog.

    v2.6.1

    This is an important security release. It is strongly recommended to update as soon as possible.

    • Fix: honor the size option after following a redirect.
    Commits
    • b5e2e41 update version number
    • 2358a6c Honor the size option after following a redirect and revert data uri support
    • 8c197f8 docs: Fix typos and grammatical errors in README.md (#686)
    • 1e99050 fix: Change error message thrown with redirect mode set to error (#653)
    • 244e6f6 docs: Show backers in README
    • 6a5d192 fix: Properly parse meta tag when parameters are reversed (#682)
    • 47a24a0 chore: Add opencollective badge
    • 7b13662 chore: Add funding link
    • 5535c2e fix: Check for global.fetch before binding it (#674)
    • 1d5778a docs: Add Discord badge
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by akepinski, a new releaser for node-fetch since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump websocket-extensions from 0.1.3 to 0.1.4 in /functions

    Bump websocket-extensions from 0.1.3 to 0.1.4 in /functions

    Bumps websocket-extensions from 0.1.3 to 0.1.4.

    Changelog

    Sourced from websocket-extensions's changelog.

    0.1.4 / 2020-06-02

    • Remove a ReDoS vulnerability in the header parser (CVE-2020-7662, reported by Robert McLaughlin)
    • Change license from MIT to Apache 2.0
    Commits
    • 8efd0cd Bump version to 0.1.4
    • 3dad4ad Remove ReDoS vulnerability in the Sec-WebSocket-Extensions header parser
    • 4a76c75 Add Node versions 13 and 14 on Travis
    • 44a677a Formatting change: {...} should have spaces inside the braces
    • f6c50ab Let npm reformat package.json
    • 2d211f3 Change markdown formatting of docs.
    • 0b62083 Update Travis target versions.
    • 729a465 Switch license to Apache 2.0.
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump express from 4.17.1 to 4.17.3 in /functions

    Bump express from 4.17.1 to 4.17.3 in /functions

    Bumps express from 4.17.1 to 4.17.3.

    Release notes

    Sourced from express's releases.

    4.17.3

    4.17.2

    Changelog

    Sourced from express's changelog.

    4.17.3 / 2022-02-16

    4.17.2 / 2021-12-16

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump qs from 6.5.2 to 6.5.3 in /functions

    Bump qs from 6.5.2 to 6.5.3 in /functions

    Bumps qs from 6.5.2 to 6.5.3.

    Changelog

    Sourced from qs's changelog.

    6.5.3

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] utils.merge`: avoid a crash with a null target and a truthy non-array source
    • [Fix] correctly parse nested arrays
    • [Fix] stringify: fix a crash with strictNullHandling and a custom filter/serializeDate (#279)
    • [Fix] utils: merge: fix crash when source is a truthy primitive & no options are provided
    • [Fix] when parseArrays is false, properly handle keys ending in []
    • [Fix] fix for an impossible situation: when the formatter is called with a non-string value
    • [Fix] utils.merge: avoid a crash with a null target and an array source
    • [Refactor] utils: reduce observable [[Get]]s
    • [Refactor] use cached Array.isArray
    • [Refactor] stringify: Avoid arr = arr.concat(...), push to the existing instance (#269)
    • [Refactor] parse: only need to reassign the var once
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] Clean up license text so it’s properly detected as BSD-3-Clause
    • [Docs] Clarify the need for "arrayLimit" option
    • [meta] fix README.md (#399)
    • [meta] add FUNDING.yml
    • [actions] backport actions from main
    • [Tests] always use String(x) over x.toString()
    • [Tests] remove nonexistent tape option
    • [Dev Deps] backport from main
    Commits
    • 298bfa5 v6.5.3
    • ed0f5dc [Fix] parse: ignore __proto__ keys (#428)
    • 691e739 [Robustness] stringify: avoid relying on a global undefined (#427)
    • 1072d57 [readme] remove travis badge; add github actions/codecov badges; update URLs
    • 12ac1c4 [meta] fix README.md (#399)
    • 0338716 [actions] backport actions from main
    • 5639c20 Clean up license text so it’s properly detected as BSD-3-Clause
    • 51b8a0b add FUNDING.yml
    • 45f6759 [Fix] fix for an impossible situation: when the formatter is called with a no...
    • f814a7f [Dev Deps] backport from main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump xmldom and plist in /functions

    Bump xmldom and plist in /functions

    Removes xmldom. It's no longer used after updating ancestor dependency plist. These dependencies need to be updated together.

    Removes xmldom

    Updates plist from 3.0.1 to 3.0.6

    Changelog

    Sourced from plist's changelog.

    3.0.5 / 2022-03-23

    • [96e2303d05] Prototype Pollution using .parse() #114 (mario-canva)
    • update browserify from 16 to 17

    3.0.4 / 2021-08-27

    3.0.3 / 2021-08-04

    • update xmldom to 0.6.0 to patch critical vulnerability (Mike Reinstein)
    • remove flaky saucelabs teseting badge (Mike Reinstein)

    3.0.2 / 2021-03-25

    • update xmldom to 0.5.0 to patch critical vulnerability (Mike Reinstein)
    • update saucelab credentials to point at mreinstein's saucelabs account (Mike Reinstein)
    • remove a bunch of test versions from the matrix because they weren't working in zuul + sauce (Mike Reinstein)
    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump degenerator and firebase-tools in /functions

    Bump degenerator and firebase-tools in /functions

    Bumps degenerator to 3.0.2 and updates ancestor dependency firebase-tools. These dependencies need to be updated together.

    Updates degenerator from 2.2.0 to 3.0.2

    Release notes

    Sourced from degenerator's releases.

    3.0.2

    Patches

    • Update vm2 to v3.9.8: f690e194041f9dacba5341d5a98bbd1a65996048

    3.0.1

    Patches

    • Fix return undefined: ccc3445354135398b6eb1a04c7d27c13b833f2d5
    • Fix filename option: 9d25bb67d957bc2e5425fea7bf7a58b3fc64ff9e

    3.0.0

    Major Changes

    • Remove "generator" output mode: #12
    • Use vm2 module to prevent privilege escalation of untrusted code: #11

    Minor Changes

    • Add any default return type to compile(): e0b9fc83faabb101944b63bc73b710be7787f15b
    Commits

    Updates firebase-tools from 9.6.1 to 9.23.3

    Release notes

    Sourced from firebase-tools's releases.

    v9.23.3

    • Upgrades Database Emulator to v4.7.3, removing log4j dependency.

    v9.23.2

    • Fixes issue when installing a Firebase Extension where secrets would be created before validation.
    • Fixes issue with filtering on a specific storage bucket using functions in the emulator. (#3893)
    • Fixes check in Cloud Functions for Firebase initialization to check for API enablement before trying to enable them. (#2574)
    • No longer tries to clean up function build images from Artifact Registry when Artifact Registry is not enabled. (#3943)
    • Show error message when running firebase init hosting:github with no Hosting config in firebase.json. (#3113)
    • Fixes issue where remoteconfig:get was not fetching the latest version by default. (#3559)
    • Fixes issue where empty variables in .env files would instead read as multi-line values. (#3934)

    v9.23.1

    • Corrects a bug where containers in Artifact Registry would not be deleted if a function has an upper case character in its name (#3918)
    • Fixes issue where providing the --project flag during init would not be recognized with a default project already set. (#3870)
    • Fixes issue with setting memory limits for some functions (#3924)
    • New HTTPS functions only allow secure traffic. (#3923)
    • No longer default-enable AR and don't send builds to AR unless an experiment is enabled (#3935)

    v9.23.0

    • firebase deploy --only extensions now supports project specifc .env files. When deploying to multiple projects, param values that are different between projects can be put in extensions/${extensionInstanceId}.env.${projectIdOrAlias} and common param values can be put in extensions/${extensionInstanceId}.env.

    v9.22.0

    • Adds firebase ext:export command, and adds extensions to firebase deploy. See https://firebase.google.com/docs/extensions/reuse-project-config for more infomation on how to manage your extensions with these commands.
    • Fixes issue where init would crash with multiple Hosting items selected (#3742).
    • Adds a command (crashlytics:symbols:upload) to upload native symbol files, used in Android NDK crash symbolication.

    v9.21.0

    • Fix Auth Emulator deleteTenant not working with Node Admin (#3817).
    • Fix Crashlytics Android Native Symbols not working on Windows due to ":" in the path (#3842)
    • Fixes Firestore emulator UI showing requests out of order

    v9.20.0

    • ext:install, ext:update and ext:configure now support param type secret.

    v9.19.0

    • ext:dev:publish and ext:update now support --force and --non-interactive flags.
    • Fixes issue where account specified by login:use was not being correctly loaded (#3759).
    • Fixes minor layout issues in Auth Emulator IDP sign-in page (#3774).

    v9.18.0

    • ext:install now supports --force and --non-interactive flags.
    • Fixes a crash when customers deploy an empty Cloud Functions project (#3705)
    • Fixes (and implements) --no-authorized-domains, skipping syncing with Firebase Auth, when deploying to a Firebase Hosting channel (#3740).
    • Adds a command (functions:list) for listing all functions in the Firebase project.
    • Uses public v1 AppDistribution API.
    • Adds appdistribution:testers:add and appdistribution:testers:remove commands.

    v9.17.0

    • Adds support for the nodejs16 runtime for Cloud Functions.

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump file-type from 16.3.0 to 16.5.4 in /functions

    Bump file-type from 16.3.0 to 16.5.4 in /functions

    Bumps file-type from 16.3.0 to 16.5.4.

    Release notes

    Sourced from file-type's releases.

    v16.5.4

    v16.5.3

    v16.5.2

    • Lock strtok3 dependency

    v16.5.1

    • Fix mimeTypes TypeScript type (#464) 0012c56

    https://github.com/sindresorhus/file-type/compare/v16.5.0...v16.5.1

    v16.5.0

    • Add support for JPEG XL image format (#455) 57ecf2d
    • Remove ASAR 240 bytes of JSON payload length limitation (#453) 07101ac
    • Remove an unnecessary dependency (#458) 3df0ed1

    https://github.com/sindresorhus/file-type/compare/v16.4.0...v16.5.0

    v16.4.0

    • Add support for VCF and fix ICS detection (#451) 29618c8
    • Add support for XCF (#450) 6ab25f3

    https://github.com/sindresorhus/file-type/compare/v16.3.0...v16.4.0

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump node-fetch from 2.6.1 to 2.6.7 in /functions

    Bump node-fetch from 2.6.1 to 2.6.7 in /functions

    Bumps node-fetch from 2.6.1 to 2.6.7.

    Release notes

    Sourced from node-fetch's releases.

    v2.6.7

    Security patch release

    Recommended to upgrade, to not leak sensitive cookie and authentication header information to 3th party host while a redirect occurred

    What's Changed

    Full Changelog: https://github.com/node-fetch/node-fetch/compare/v2.6.6...v2.6.7

    v2.6.6

    What's Changed

    Full Changelog: https://github.com/node-fetch/node-fetch/compare/v2.6.5...v2.6.6

    v2.6.2

    fixed main path in package.json

    Commits
    • 1ef4b56 backport of #1449 (#1453)
    • 8fe5c4e 2.x: Specify encoding as an optional peer dependency in package.json (#1310)
    • f56b0c6 fix(URL): prefer built in URL version when available and fallback to whatwg (...
    • b5417ae fix: import whatwg-url in a way compatible with ESM Node (#1303)
    • 18193c5 fix v2.6.3 that did not sending query params (#1301)
    • ace7536 fix: properly encode url with unicode characters (#1291)
    • 152214c Fix(package.json): Corrected main file path in package.json (#1274)
    • See full diff in compare view
    Maintainer changes

    This version was pushed to npm by endless, a new releaser for node-fetch since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(v2.73.0+13)
  • v2.73.0+13(Mar 11, 2021)

    This update benefits from Flutter 2.0.1 update.

    Changelog:

    • Add image credits input for author & reference images
    • Add IMDB field for author & reference
    • Fix an issue preventing to go back from 'add quote' page with keys shortcuts
    • Upgrade Flutter engine to 2.0.1 and dependencies
    • Other fixes & improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.66.3+12(Mar 1, 2021)

  • v2.66.2+12(Feb 26, 2021)

    This update focuses on fixing more bugs on mobile:

    • Fix Firestore issue on web (cf GitHub)
    • Fix issue when saving a draft as temp quote → data conversion issue → data type not being primitive (num, string, bool, null)
    • Fix issue when proposing a temp quote (data conversion issue)
    • Add visual feedback when saving draft
    • Remove oldest change logs (they're available online)
    • Update actions buttons' style on search page
    • Update random quotes page for mobile (use PageAppBar, reduce some padding)
    • Add more randomness to random quotes (pool of 20 quotes instead of 6)
    • Update more button on quote card (horizontal instead of vertical)
    Source code(tar.gz)
    Source code(zip)
  • v2.63.5+11(Feb 26, 2021)

    This update is focus on fixing bugs on mobile:

    • Fix date conversion issue (on "propose quote" & "edit quote/author/ref" pages)
    • Update link cards style (edit ref, edit author, ref, author page)
    • Fix author image link input keeping last (other input) value
    • Fix author navigation from reference page
    • Fix nav. back icon clipped on PageAppBar
    • Show author's name on quote card (when available) (grid layout)
    • Update font on quote card (grid layout)
    • Add padding to user actions on quote page
    • Add padding to link buttons on reference page
    • Add release date on reference page
    • Fix navigation (from quote page) to topic page with no name parameter
    • Update Firebase dependencies & replace deprecated code
    • Add border radius to reference's avatar
    • Update types layout on reference page
    • Fix app bar overflow on mobile
    • Fix icons alignment on app bar
    • Reduce top padding on topic page
    • Add a close button on side bar, at the top, on topic page
    Source code(tar.gz)
    Source code(zip)
  • v2.47.1+10(Feb 23, 2021)

    This new version uses auto_route, a new router module, and provides better navigation experience, mostly on web.

    Some other improvements:

    • Add random quotes (replace topics section on mobile)
    • Fix an issue preventing deleting drafts
    • Improve key binding for "add quote" scenario on desktop layout
    • Improve quote page & "add quote" page layout
    • Data security has been improved
    • Fix bottom sheet not dismissed after selecting "add quote to list"
    • Fix go to "sign in" page from on boarding
    • On boarding popup is now more discrete
    • Use new snack bar layout
    • Use new cloud function to propose quotes
    • Add quotes, authors, & references deletion and edition (admin sections)
    • Fix language dropdown not showing correctly on various pages
    • Add a button to shuffle accent color
    • Update data schemes (for database compatibility)
    • Add swipe actions on desktop layout for "quote row" component
    • Update some texts and fix typos
    • Increase maximum quotes proposals per day (from 1 to 30)
    Source code(tar.gz)
    Source code(zip)
    app-release.aab(27.42 MB)
  • v2.0.1+9(Jan 14, 2021)

    January 2021 Update 🎉

    After a long time without changes, this new version brings a completely new user interface on mobile and the web.

    You can download the binaries or get the app on the Play Store and App Store, as well as access the web version.

    Some of the changes:

    • Fix push notifications
    • Add share image quote
    • Update quote page & other pages layout
    • Add search by quotes, authors, references
    • Add changelog
    • Add swipe actions on quote tiles
    • Re-work application icon
    • Add onboarding
    • Update first app's page
    • Use better image preview

    Among other fixes.

    Source code(tar.gz)
    Source code(zip)
    app-release.aab(26.85 MB)
    fig.style.ipa(19.37 MB)
  • v1.2.3+6(Jul 8, 2020)

  • v1.2.1+4(Jun 17, 2020)

  • v1.1.0+2(Jun 6, 2020)

Owner
Jeremie Corpinot
Dart enthousiast.
Jeremie Corpinot
App - Quotes app for mobile (Android, iOS) & web

5 seconds of emotion Status Download Table of Contents Status Download Table of Contents Presentation What's different from existing apps ? Technologi

Jeremie Corpinot 76 Oct 31, 2022
Kut in - A Flutter app that shows random, wise Kanye West quotes.

Kut In A Flutter app that shows random, wise Kanye West quotes. ?? Note: This app was initially made for #FlutterCreate, a contest by Google that chal

Bapusaheb Patil 20 Apr 25, 2021
A Random Anime Quotes app I made for fun.

Random Anime Quotes An random anime quote app I made for fun. Powered by Airi Preview ranimequotes.mp4 Features ✅ Like and save locally your favorite

Juan Carlos Ramón Condezo 21 Aug 24, 2022
MQuote provides you +700 Motivational & Inspirational quotes by famous authors, celebrities. Powered by Flutter

MQuote MQuote provides you +700 Motivational & Inspirational quotes by famous authors, celebrities. you can select your favorite quotes, you can share

Aybars 22 Jan 27, 2022
Create bulk instagram quotes posts with custom background, style, font, size. built using flutter

Mini Canva minicanva.com Bulk Image Generator from given list of quotes, lines ?? Purpose Etsy is an E-commerce platform where we can sell digital goo

Ashish Pipaliya 7 Oct 29, 2022
A simple flutter application using #clean_architecture to generate random quotes using from #api

flutter_random_quotes_app_wth_clean_architecture A new Flutter project. Getting Started Project Structure ├── assets | ├── images | ├── 1x

Hossam Mohammad 2 Oct 4, 2022
Flutter Facebook Responsive UI - Web & Mobile: Android | IOS

Facebook Clone Responsive UI - Flutter Web & Mobile: IOS | Android Web Version with Flutter! This web version uses flutter. Mobile Version: Android |

Luan Batista 24 Jan 3, 2023
WooCommerce App template that uses Flutter. Integrated to work with WooCommerce stores, connect and create an IOS and Android app from Flutter for IOS and Android

WooCommerce App: Label StoreMax Label StoreMax - v5.3.1 Official WooSignal WooCommerce App About Label StoreMax Label StoreMax is an App Template for

WooSignal 314 Jan 9, 2023
An E-Commerce application developed on Flutter, which helps to run the app on Android / IOS / Windows's OS / MacOS / Web Browser from a single codebase

BuySmart An E-Commerce application developed on Flutter, which helps to run the app on Android / IOS / Windows's OS / MacOS / Web Browser from a singl

Sumit Kumar 11 Oct 10, 2022
Aditya 93 Dec 25, 2022
Let's setup Firebase​​ for our Flutter​​ app on Android​, iOS​ and Flutter Web. Setup Firebase to use Firebase products.

Flutter Tutorial - Firebase Setup For Flutter Web Let's setup Firebase for our Flutter app on Android, iOS and Flutter Web. Setup Firebase to use Fire

null 1 Apr 27, 2022
This is the code for the POAPin app, which is written in Flutter and currently supports iOS, Android, and Web platforms.

POAPin This is the code for the POAPin app, which is written in Flutter and currently supports iOS, Android, and Web platforms. ?? Get the app Platfor

Glory Lab 17 Nov 7, 2022
Persist data with Flutter's Hive NoSQL Database locally on Android, iOS & Web.

Flutter Tutorial - Hive NoSQL Database Persist data with Flutter's Hive NoSQL Database locally on Android, iOS & Web. ✌  Preview App Preview Course Pr

Johannes Milke 54 Dec 31, 2022
Simple tool to open WhatsApp chat without saving the number, developed using Google's Flutter Framework. for Android/ IOS/ Desktop/ Web

OpenWp Simple tool to open WhatsApp chat without saving the number Explore the docs » View Demo · Report Bug · Request Feature Table of Contents About

Swarup Bhanja Chowdhury 15 Nov 1, 2022
Responsive Blog Theme using Flutter | Web, macOS, Android, iOS

Responsive Blog Theme using Flutter | Web, macOS, Android, iOS Watch it on YouTube Packages we are using: flutter_svg: link get: link Flutter recently

Abu Anwar 196 Dec 9, 2022
A Dart Build Plugin that uploads debug symbols for Android, iOS/macOS and source maps for Web to Sentry via sentry-cli

Sentry Dart Plugin A Dart Build Plugin that uploads debug symbols for Android, iOS/macOS and source maps for Web to Sentry via sentry-cli. For doing i

Sentry 36 Jan 4, 2023
A simple yet powerful Flutter plugin for showing Toast at Android, iOS and Web.

Flutter Toast A simple yet powerful Flutter plugin for showing Toast at Android and iOS. Features: Native Toast Pure Flutter Toaster Installation Add

Eyro Labs 5 Dec 13, 2021
100+ Professional UI implementations with Code in Flutter. Available in Android, iOS, Linux and Web

Flutter UI Challenges My effort on replicating various apps UI on flutter. View on Web Building and running the code [ Updated ] Thank you all for you

Damodar Lohani 4k Dec 28, 2022