Giter Site home page Giter Site logo

faradayafrica / faraday-frontend Goto Github PK

View Code? Open in Web Editor NEW
10.0 2.0 0.0 5.51 MB

Community-driven platform helping Students connect with other Students across campuses to learn and suceed with ease.

Home Page: https://app.faraday.africa

HTML 0.77% CSS 8.83% JavaScript 89.31% SCSS 1.08% Shell 0.02%
africa edtech edtech-frontend edtech-startup education hacktoberfest hacktoberfest-accepted nigeria open-source reactjs

faraday-frontend's People

Contributors

aybruhm avatar devgenix avatar faradayadmin avatar jomefavourite avatar nworiekingslee avatar rehkmansa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

faraday-frontend's Issues

Implement Qshot Redesign.

Find the new redesigned Qshot interface here

  • Responsively implement the design that is titled "answered pen with background" to result in a single HTML file.

Integrate Univast

This issue adds the ability to fetch data on tertiary institutions to be used on the educational information signup page.

The NavBar Bugg

@jomefavourite Please create a different branch for fixing the nav issue. Immediately it's fixed inform me here on this issue. We have less than 14days to our launch event

enhance edu signup-screen

In the third signup screen, which is used to collect academic data,

  • Add a Country Field.
    - Use the API Endpoint from Univast here
    - After getting the country from the Endpoint above, use the Country id from the data acquired from the response in the same endpoint above to make a POST request to fetch a list of Tertiary institutions in that Country.
  • After collecting the data, add the country name obtained from the API Endpoint above and the school logo obtained from the data in the School response, to the data sent to the App Backend API.
  • Use IDs instead of names and codes to get data for Schools, Faculties, and Departments.
  • In the POST request to the backend, pass the following data:
    - country name and country id
    - school name, school id, and school logo
    - faculty name and faculty id
    - department name and department id
    Check the Postman Workspace to see the exact variable names and required fields.

This issue depends on the following:

Add redirect to original page on login from guest-mode

If I visit Faraday through a link to a question/poll/article in guest mode and decide to comment/vote/reply, I'd be redirected to login from which I would either login if I have an account or signup. When I do that the link to the page where I was should be carried along and after a successful signup/login I should be taken back to the original page where I was.

This can be done by holding the link to the page in a request parameter variable called redirect.
So when I click to login from a discussion page in guest mode, I am taken to a login page and the URL of the login page would be something like; https://app-staging.faraday.africa/login?redirect=https://app-staging.faraday.africa/qfeed/a6474c2b-76b7-479c-8c9d-e323692b59be
If on that page I decide to signup instead, it'd be; https://app-staging.faraday.africa/signup?redirect=https://app-staging.faraday.africa/qfeed/a6474c2b-76b7-479c-8c9d-e323692b59be

If you visit any of the links here, you'd be taken to the actual pages and see the redirect variable held in as a request parameter.

From there up, it's up to you to then check after a successful signup/login if the URL was carrying a redirect and if was, redirect the user to the original page they were.

Feat/implement analytics for impressions and clicks

This issue addresses implementing analytics to;

  1. Register an impression when a resource is viewed.
  2. Register a click when a resource is expanded.

Note: A resource refers to a Poll, a Question, or an Article.

To implement number 1, it's suggested that you would need to use a library or write custom code to detect when a resource is in the viewport of the user's browser/device. One popular library for this is react-intersection-observer. When a resource is in the viewport, you would make a request to the backend to record an impression.

To implement number 2, you would also need to track when a user clicks to expand a resource. You could do this by attaching an event listener to the expand button and making a request to the backend when the button is clicked to record the click.

Resend OTP doesn’t work

When you attempt the resend OTP, it returns a 401 - unauthorized.

I noticed the authorization headers were not passed

Enhancement/improve field state of Univast

This issue addresses these;

  • when there's no school selected yet, clicking on faculty should display "Select a School"
  • when there's no faculty selected yet, clicking on the department should display "Select a Faculty"
  • changing the values for a field, should clear the value of the field dependent on it. For example, if I selected the University of Lagos as my school and Engineering as a Faculty, If I go back to change my school to a different school, the value of the faculty and department should be cleared.
  • Rather than align values in the middle, align them right to left.
  • Add a search field to the result dropdown for schools to make it easy to search and find a specific school.

Implement Qfeed redesign for Mobile and Desktop

Strictly stick to implementing the design on mobile and desktop.
That is implement the redesign and keep the ability to vote which has already been implemented.

Other actions on Qfeed such as Echo, Pen, Sharing are still being designed once the design is ready, a separate issue would be created for them.

Implement Bookmarks.

This issues addresses these:

  • Allows a user to easily add a question to their bookmarks
  • Access their bookmarks from their profile page visible only to them.

Users can't delete their questions

Current behavior

There's no menu for questions as there is for comments that enable a user to delete her question or follow another question's author

Suggested solution


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.