Code Monkey home page Code Monkey logo

harp-video's Introduction

Team 3 Capstone Project

Team Members

  • Seth Akins (Hedgemon4)
  • Erin Hiebert (SecondFeline)
  • K Phan (ketphan02)
  • Teresa Saller (te-sa)
  • Justin Schoenit (justino599)

Link to Deployed Project

Harp - A Secure Platform for Anonymous Video Submission

Project Setup

Requirements

Please ensure the following are installed on your system:

Step-by-step guide

  1. Clone the project using Git
  2. Obtain the two required environment files for local development by contacting one of the project devs: ./.env and ./workers/poll-worker/.env
  3. Follow the steps in: AWS Authentication Credentials Setup
  4. Project Setup

Tests

Running tests locally:

Run npm run cypress:open to use the cypress GUI to run tests. Alternatively, run npx cypress run to run all tests in the commandline. Note: You need to have the website up and running to be able to run E2E tests.

Running tests in the CI pipeline:

Tests are automatically run every time you push to an active (non-draft) PR, but you can also run them manually

Common commands

Chosen Project

Option 3 - Video Streaming Using Cloud Technology

Project goal: To create a web application using AWS services for professionals who will receive video submissions from users while protecting their privacy.

Target users:

  • Senders: An average adult who has created a video of themselves, has access to Internet and phone/computer, and may want to have their face blurred throughout the video for privacy reasons.
  • Receivers: Professionals (e.g., doctors, teachers, recruiters/interviewers) who need to review the video submissions for diagnosis or assessment reasons, and has access to Internet and computer.

Things to think about when scoping your project: This list is non-exhaustive. It is only meant to get you thinking about the variety of ways you may choose to scope and design this project.

  • How can the app facilitate the recording of the video after the sender logs in?
  • How might senders review what has been recorded and decide if they want to re-record it before submitting it?
  • How will data security and user privacy be enforced and communicated to the senders?
  • Will the application be responsive to work on phones, tablets, and desktops?
  • Will the receiver be able to provide feedback to the sender, or request follow up video submissions?
  • How will professionals know when a diagnosis/assessment is required?
  • Can senders view their videos in the system and delete them?
  • Will the senders or receivers be able to decide how long the videos should be retained in the system?

Repo organization

Our tests can be found in the cypress folder, documentation is contained in docs, and our code is in src. Our NextJS app uses an App Router, so URLs in our web app match the folder structure in our app directory.

.
├── ...
├── cypress                 # Tests (E2E, component, and unit)
├── docs                    # Documentation files
│   ├── ...
│   ├── guides              # Project set-up guides
│   ├── plan                # Project plan document
│   └── weekly logs         # Personal and team logs
├── prisma                  # Database schema and migrations
├── public                  # Assets
├── src
│   ├── app                 # Source files
│   ├── components          # Reusable React components
│   ├── lib                 # Helper classes
│   ├── ...
│   ├── types               # TypeScript type definitions
│   └── utils               # Utility functions   
├── ...
└── README.md

harp-video's People

Contributors

te-sa avatar justino599 avatar hedgemon4 avatar secondfeline avatar ketphan02 avatar github-classroom[bot] 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.