Coder Social home page Coder Social logo

horusgoul / atom-pwa Goto Github PK

View Code? Open in Web Editor NEW
46.0 46.0 29.0 14.57 MB

Learn the basics of chemistry doing the tests and using the periodic table

Home Page: https://atom.horuslugo.com

License: MIT License

TypeScript 81.75% HTML 2.84% JavaScript 2.27% SCSS 12.85% Swift 0.28%
chemistry education hacktoberfest periodic-table pwa react typescript

atom-pwa's Introduction

atom-pwa's People

Contributors

alexprave avatar allcontributors[bot] avatar amit-agrawals avatar aprillion avatar dependabot[bot] avatar devil005 avatar emma-r-slight avatar grady-lad avatar horusgoul avatar jacobmgevans avatar juhanakristian avatar marcosvega91 avatar mitchelvanbever avatar mohitpopli avatar mpeyper avatar nobrayner avatar rubenmoya avatar silas229 avatar tigerabrodi avatar tometo-dev avatar ypazevedo avatar ziedtouibi 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

atom-pwa's Issues

Add real images of each element in the Periodic Table

Is your feature request related to a problem? Please describe.
Users in Google Play want real images of elements displayed in the element details view of the periodic table.

Describe the solution you'd like
Enhance the element detail view to include a photo of the element (if any).

Note: Make sure the image loading is optimized.

Describe alternatives you've considered
-

Additional context
-

Google Play review internal link

Add "Hint" feature to the Periodic Table Quiz

Add a new setting in the Periodic Table Quiz to enable hints.

If the setting is enabled and a person cannot locate an element on the first try, a visual indicator will pop-up to show them the element's place in the table for a few seconds.

We need to A/B test whether to enable this setting by default or not. Based on my personal preference, I think it would be a good idea to enable it by default.

Add a mode to the Periodic Table Quiz to help people associate the elements' names with their respective symbols and vice versa

Depending on the mode, we will display different information as hints (don't confuse with #36):

  1. Learn to place elements by their symbol and atomic number. This is the single available mode in the periodic table right now.
  2. Place elements by their symbol, name, and atomic number. This would also serve as a review if the person already completed the first mode (1). We would give the user the symbol and then display the names and atomic numbers on the table.
  3. Place elements by their symbol, name, and atomic number (Reversed). Same as the second mode (2), but we would give the user the name and then display the symbols and atomic numbers on the table.

We'll probably need to figure out a more intuitive way for users to select the mode. For now, we should add an option to the quiz settings.

ElementPicker search by multi-digit atomic number shows result from first digit

Describe the bug
When searching for an element in ElementPicker by the atomic number, the results can get out of sync with the search field value.

To Reproduce
Steps to reproduce the behavior:

  1. Go to https://atom.horuslugo.com/mass-calculator
  2. Click on Add element
  3. Type 25
  4. See Helium

Expected behavior
It should find Manganese.

Screenshots
image

Desktop (please complete the following information):

  • OS: Win 10
  • Browser: Firefox
  • Version: 87

Additional context

Discovered when adding a test in OpenSourceRaidGuild#43 and currently the failing test is skipped => we need to unskip the test when fixed.

[i18n] Help needed to make Atom available in new languages

Hi!

Atom is currently available in English, Spanish, Rumanian and German thanks to its users' contributions. We would love to have the app translated to reach students who don't know any supported languages.

For that, we have created a Crowdin project. Crowdin is a tool that provides translators with an app where you can translate the texts that can be found inside Atom. Those translations are then reviewed to decide whether to include them in the app or not.

Right now, there are like 220 texts that need a translation. Most of them are the periodic table elements, and there is no in-depth learning material yet, so the texts are not that long and won't take much time to translate (in fact, I think we could use Google Translate for a big chunk of the strings)

It's important to note that a new language will only be available after reaching a certain translation percentage (85%). That means that even if you contribute by translating a few strings, those may not be available until more people contribute and the language reaches the 85% required.

Languages available in Atom:

  • English. 100%
  • Spanish. 100%
  • Rumanian. 100%
  • German. 100%

Languages that need help right now:

  • French. 0%
  • Italian. 0%
  • Portuguese. 0%
  • Hindi. 0%

Note that if you want to contribute to a language that is not listed here, we can add support if you reply to this issue.

Thank you โค๏ธ

Refactor Class Components to use Hooks

There are many components in the app that use React Classes instead of Hooks, and it would be best to migrate all of the components to use hooks before implementing new features.

There are two kinds of components in the app:

  • Stateful components. These will require you to use the new hooks (useState, useEffect...). Migrating them may be tricky in some cases because there are some bad practices in existing components.

  • Stateless components. If you're new to React, start with these as they will only require you to use a function instead of a class.

Please a Pull Request for each component in case you decide to refactor more than one.

P.S.: Feel free to ask for guidance if you find trouble.

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.