Skip to content

Ringworm-Relief/rr-frontend

Repository files navigation

Ringworm Relief ~50 hours

👆Click the heading to visit the deploy link👆

A multi-user application providing a hub for pet ringworm support and education. Ringworm treatment in multi-pet households is more often than not, a sentence to be strung out, overworked, and hypervigilant until treatment is over AND no re-infection occurs. But what does treatment even look like? Did you know most animals at shelters who contract ringworm are usually euthanized because of how aggressive and contagious the fungus is? Education sourced from those who foster ringworm animals to prevent these euthanizations is the best knowledge there is. However, I know from experience, that this information is nested in random forums online, or comments in a one-off Facebook post. RR is aimed at providing a hub of education and information tried and tested by those who have experienced it and successfully rid their household of the fungus.

Contributors

Technologies Used

TypeScript React HTML CSS Cypress Material UI Git GitHub Canva

Installation Instructions:

  • Run the following on the command line to clone the repo and run the app locally:
    git clone git@github.com:Ringworm-Relief/rr-frontend.git
    cd rr-frontend
    npm install
    npm start
    

Run Tests

  • Ensure you're running the app locally (see Installation Instructions above)
  • Run the following on the command line to open Cypress: npm run cypress or npx cypress open
  • Click E2E Testing, then Start E2E Testing in the desired browser
  • Select a test suite to run all tests related to that suite

Future Features/Improvements

  • Google OAuth2.0 for a more secure login
  • Currently integrating DataDog
  • Adding data visualization to the dashboard. Eg: treatment progress based on medication application
  • Allow users to upload a profile picture and add a pet profile picture
  • Auto-create calendar events for medications based off of frequency, including params in the calendar to select what type of medication.
  • Use a global state management tool
  • Complete the transition to a PWA
  • Utilize caching or cookies, this could be tied to the PWA transition

Context:

Wins

  • Pulling in a brand new 3rd party tech, using Syncfusion's scheduler
  • Using a true login for the first time
  • Learning how to better read official documentation in the process of using Syncfusions scheduler

Challenges

  • Learning how to navigate Syncfusions calendar and follow their documentation
  • Defaulting to type any in TypeScript which moderately defeats the point
  • Implementing CI/CD