GithubHelp home page GithubHelp logo

sofiavazs / final-project-frontend Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vanessasue27/final-project-frontend

0.0 0.0 0.0 3.64 MB

Time Capsule ๐Ÿš€ Developed by Sofia and Vanessa - A multi page React app in which parents can log in daily entries and track down a baby's progress ๐Ÿ‘ถ. Built with React Router, Redux and Styled Components โš›

Home Page: https://time-capsule-final.netlify.app/

HTML 0.76% JavaScript 97.24% CSS 2.00%

final-project-frontend's Introduction

Time Capsule ๐Ÿš€

"Time Capsule" is a student project developed by Sofia Vaz Sousa and Vanessa Sue Smith. Sofia has experience working as a neonatal ICU nurse where she used to write daily log books for premature babies who did not end up immediately under their parents' care. Originally this was done in paper format. Our idea was to take this to the next level and create a web app that every parent can use to log on details about their child, from birth until they are toddlers: a digital "time capsule". ๐Ÿ‘ถ

Read more about Time Capsule here: https://time-capsule-final.netlify.app/about

In "Time Capsule", users will be able to initially create a detailed profile of a new Baby and then make daily entries which will log data about the activities performed that day, weight and a reflection. There are sections in which we show the progress based on the data we have stored: latest entries and a weight chart ๐Ÿ“Š

How We Built it ๐Ÿ’ช๐Ÿ‘ฉโ€๐Ÿ’ป

This is a multi-page React app built using React Router and Redux with Toolkit. We started by building the Sign Up and Log In flow, which will take first users to an initial form to create a new Baby Profile, while returning users will be taken directly to the Dashboard. The Dashboard is a restricted area: we have implemented authentication so only registered users can access it. This is all achieved with redirecting between components thanks to Router, in combination with state management in the Redux Store.

  • The Dashboard shows a static header including the Baby Profile and a sidebar which controls what to show in the dashboard's main content. This is all controlled via a local state and conditional rendering.
  • Most of the sections are performing a fetch to the backend to either GET, POST, PATCH or DELETE data.
  • Latest Entries section will show EDIT and DELETE buttons, which gives the user the possibility to update an older entry or remove it.
  • Weight History (which we are super proud of! โœจ), is built using the Chart.js, connecting to the data we get from a performed fetch.
  • We have also implemented an Image Upload feature ๐Ÿ“ธ in which the user can set up a photo for the Baby Profile. This is achieved using Cloudinary for picture storage.
  • Styling is mostly done using Styled Components ๐Ÿ’…, only with the exception of custom checkboxes which are styled on CSS.

Additional Packages used

  • Moment.js
  • Chart.js
  • React date picker and time picker
  • Sweetalert ๐Ÿ’—

Backend ๐Ÿ˜Ž

We have also developed the Backend for this application which consists of a RESTful API built with Node.js and Express and with data collected via MongoDB and mongoose.

You can find the repository for it here: https://github.com/VanessaSue27/final-project-backend

View it Live!

Here you can have a look at what Time Capsule๐Ÿš€ is all about, super proud to present it to you at: https://time-capsule-final.netlify.app/

final-project-frontend's People

Contributors

sofiavazs avatar vanessasue27 avatar

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.