Giter Site home page Giter Site logo

liyatheresa / thesaurus Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 478 KB

Thesaurus application built using ReactJS

Home Page: https://thesaurus-react.netlify.app/

HTML 4.48% JavaScript 85.82% CSS 2.19% SCSS 7.51%
antd datamuse-api dictionary hacktoberfest pronunciation reactjs thesaurus

thesaurus's People

Contributors

divinsmathew avatar liyatheresa avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

thesaurus's Issues

Migrate to Ant Design

Use components from antd to improve the user experience of the app.

The transition will constitute the following sections in the UI:

  • Input to accept a search query.
  • Dropdown to display word suggestions (or a searchable Select).
  • Modal in which meanings, synonyms, etc are displayed.
  • Collapse to show/hide sections in modal.
    • Add Tags.
    • Display synonyms and antonyms.
    • Add part of speech headings inside definitions.
  • Spin wherever loading states are to be shown.
  • Icons wherever icons are required (Eg: Search).

Document the project in README.md.

README files tell other people why your project is useful, what they can do with your project, and how they can use it. Any good project will have a well-documented README file (or links to external documentation).

Let's create a good one for To Do. Make sure to include the following at the very minimum:

  • Overview: Describe your project, purpose, features, tech stack used, etc.
  • Dependencies: List external libraries that this project depends on, and their purpose.
  • Invitation for others to contribute.

Links:

  • Learn about creating a good README from here.
  • Learn about formatting and styling in GitHub from here. (how to highlight, how to include code snippets, images, hyperlinks, tables)

README files are important and will help your project stand out. Take your time to complete this.

Pronunciations

Add a feature that would read out word pronunciations. Make use of a free public API or a third-party Javascript library for this.

Center Search Bar

Expected:

  • Center the search input with the thesaurus text appearing above it.

Implement serialisers for APIs

Let's have a serializer function for each APIs.

Currently, whatever we are getting from the backend API, we are directly using it in the application from the response. This creates a tight coupling of data architecture between frontend and backend which makes it hard to maintain if there are any changes in the backend.

A serializer is simply a function that will take in the raw response received from the backend and return a well-formatted object with only the data required in the application. This will isolate the bulky data manipulation code from the component. Also, If a serializer is implemented, when there is a change in the backend API (e.g. change in API response field), we only need to change it in the serializer instead of everywhere in the React app.

Also, one side-effect of not having a serializer is that we see snake case in our React components which is not really nice.

Bugs

Create separate branches for each of the following bugs and work on them. (Use the Convert to issue button)

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.