Giter VIP home page Giter VIP logo

react-survey's People

Contributors

malparty avatar

Watchers

 avatar  avatar

react-survey's Issues

[Feature] As a user, I can answer an NPS question

Why

In order to complete a survey containing such question types.

Acceptance Criteria

  • Handle the answer type
  • Handle the answer constraints — required, format regex, default value, etc...

Design

image

[Chore] Update Readme and PR templates

Why

In order to start from clean foundations, ensure the 'README.md' and the default PR templates are aligned with the project need.

Who Benefits?

Developers and reviewers will have a clean repository even before we bring code in.

[Chore] Setup scss and style framework

Why

In order to save time on UI tasks and keep the code clean.

Insight

  • Configure the project to use SCSS from this source.
  • Choose to include bootstrap of tailwind library.
  • Setup default variables in order to get closer to the targeted UI

Who Benefits?

Developers.

[Feature] As a user, I can visit the application in different languages

Why

In order to ease my navigation when I am not a native English user.

Acceptance Criteria

  • All English instructions held inside the application should be in a common location
  • The language files to load should be configuration on page load
  • Default values should fallback to Enligh in case of incomplete translation files
  • [optional] Build an FR/EN switch to demo the multi-lang feature

Design

N/A

Resources

[Chore] Configure Unit Tests

Why

In order to enable writing unit tests and ensure the tests will auto-run.

Insights

Configure JEST on the project following this source.
Configure the GitHub action to run the tests on push.

Who Benefits?

Developers for ease to extends the code
Users for improved quality

[Chore] Create the base React-app

Why

In order to have the whole config done and to be able to work on the deployment issues.

Insights

Use the create-react-app tool to generate the app.

  • Ensure linters are well setup & Nimble compliant

  • Use the typescript option

    npx create-react-app my-app --template typescript

Who Benefits?

Developer to reduce the load on manual configuration.

[Feature] As a User, I can answer a satisfaction question

Why

In order to complete a survey containing such question types.

Acceptance Criteria

  • Handle the answer type — warning, these can be thumbs up, stars, hearts and maybe more!!!
  • Handle the answer constraints — required, format regex, default value, etc...

Design

image

[Feature][Front End] As a User, I can see a Login form

Why

In order to enable a user to sign in to the application

image

Acceptance Criteria

  • ✅ Handle base screen layout and input styling
  • Do not handle API requests yet
  • Do not handle the token refresh mechanism yet

Who Benefits?

Users who could not use the future features without being logged in.

[Feature] As a User, I can answer a text field question

Why

In order to complete a survey containing such question types.

Acceptance Criteria

  • Handle the text field answer type — one question can have many text fields
  • Handle the answer constraints — required, format regex, default value, etc...

Design

image

[Chore] Configure UI tests

Why

In order to guaranty the main workflow/happy paths are still working — even the code changed.

Insights

Setup and configure Cypress for running UI tests.
Configure a GitHub action to run the tests on push.

Who Benefits?

Developers for ease to extend the code
Users for improved quality

[Feature] [Backend] As a user, I can navigate across the survey questions

Why

In order to read them, but also to update my answer when needed.

Acceptance Criteria

  • Handle the questions iteration logic with a non-styled <QuestionContainer> component for each question — the basic text for Proof of Work can be implemented
  • Handle moving forward as well as the close button
  • Display a Submit button when reaching the last question
  • Redirect the survey homepage when returning from the close button
  • Do not handle the action of the Submit button
  • Do not handle the question styling
  • Do not handle the navigation styling

[Feature][BackEnd] As a User, I can submit the login form and see the status of my login request

Why

In order to enable a user to sign in to the application

image

Acceptance Criteria

  • Handle API requests (including setting up the base API connection structure and staging/production logic)
  • Handle the storage of access&refresh tokens
  • Do not add a new screen yet — use a default "you are logged in" message instead
  • Do not handle the token refresh mechanism yet
  • Do not handle layout style yet

Who Benefits?

Users who could not use the future features without being logged in.

[Feature] As a user, I can log out from the application

Why

In order to prevent other users to use the application under my identity.

Acceptance Criteria

  • When a user clicks an avatar on the top right corner of the screen, a menu is displayed with the logout button
  • When the user clicks the logout button, the current token is logged out and the user is redirected to the home page

Design

image

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.