Coder Social home page Coder Social logo

samwise's Introduction

Samwise

Deployment Status License

Last updated 05/09/2020

Cornell DTI

Contents

About

A web app to help Cornell students plan their semesters.

Getting Started

You will need Node.js and Yarn installed on your development machine.

To setup your environment, go into the root folder and run yarn. Then, run yarn workspace frontend start to start a development server for frontend. If you need to work on firebase functions, run yarn workspace functions build to compile your functions code.

This repository comes with multiple tools to ensure code quality, including a linter and a type checker. Please ensure that they are properly configured with your IDE or text editor. For text editor setup instructions, please visit Cornell DTI's developer website.

Contributing

To maintain code quality, the master branch is write-protected. To contribute, please work on your changes in a new branch and then create a pull request into master. When opening a pull request, make sure you follow the pull request template. Better changelogs make the review process go quicker and easier for everyone.

All contributed code is expect to follow the Style Guide.

Dependencies & Libraries

Frontend

These should be installed automatically by yarn install.

  • React - a Facebook library for frontend, used for frontend UI.
  • Redux - a predictable state container for JavaScript apps, used for state management.
  • React-Redux - a library with bindings between React and Redux.
  • Firebase - a serverless service for authentication, database, analytics, and more.
  • React FirebaseUI - a simple sign-in component library for Firebase Authentication.
  • React Calendar - a calendar component for React.
  • React Color - a collection of React components for picking colors.
  • Fuse.js - a client-side fuzzy-search library.
  • React Toastify - a library for emitting toasts in React.
  • React Confetti DOM - a library for triggering confetti blasts
  • React Modal - a library for displaying accessible modal dialog components
  • React Beautiful DND - a library for drag and drop lists

To find the specific version used of each dependency, see package.json.

Documentation

Check our wiki to see all our documentation.

Screenshots

Contributors

Since 2016

  • Alice Zhou* - Product Manager
  • Justin Tran* - Front-end Developer
  • Kevin Li* - Back-end Developer / Designer

Since 2017

  • Gautam Mekkat* - Back-end Developer
  • Matthew Epstein - Product Manager
  • Vivian Shiu - Designer / Design Lead

Since 2018

  • Jessica Hong* - Back-end Developer
  • Michael Xing - Front-end Developer / Technical Product Manager
  • Michelle Park - Designer
  • Sam Zhou - Front-end Developer / Developer Lead

Since 2019

  • Megan Yin - Front-end Developer
  • William Evans* - Back-end Developer
  • Pinxuan Huang - Front-end Developer
  • Peter Wu - Front-end Developer
  • Jason Tung - Back-end Developer

Since 2020

  • Ishika Jain - Front-end Developer

* Former Contributor

We are a team within the Cornell Design & Tech Initiative. For more information, see our website.

Cornell DTI

samwise's People

Contributors

samchou19815 avatar mt-xing avatar meganyin13 avatar ptwu avatar pihucode avatar dti-github-bot avatar jason-tung avatar justinttran avatar jessicahong9 avatar blue9 avatar me382 avatar williamrockwellevans avatar ishikajain avatar dependabot[bot] avatar

Stargazers

Control + Shift + m avatar Carlos Castillo avatar t avatar max avatar Liam Arzola avatar Khanh Nguyen  avatar David Habedank avatar Enoch Chen avatar Jens Rottiers avatar  avatar  avatar Tania R. Zúñiga avatar  avatar Alice Zhou avatar  avatar  avatar  avatar  avatar

Watchers

James Cloos avatar Eway avatar  avatar Alice Zhou avatar  avatar  avatar  avatar

Forkers

lsizemore8

samwise's Issues

Inconsistency in naming props

[For DevSesh 11]

I noticed in some classes like TaskView.jsx you just say Props and State when declaring (which is a bit unspecific), but then sometimes you name the Props struct something different like in ProgressIndicator.jsx. I prefer the second way, but it was just something I noticed.

Things break when the window is too small

Describe the bug
See the screenshot.
I don't think it's a very urgent problem, since most users won't be that crazy.
However, it would be nice if it doesn't break.

Screenshots
screen shot 2019-02-19 at 12 52 58 am

Desktop (please complete the following information):

  • OS: macOS
  • Browser: Chrome
  • Version: latest

Condense actions.js

Some similar functions could be combined, such as the Edit Action functions, as to make the file shorter.

Deformed checkbox for overdue task in focus view

To Reproduce
Simply have an overdue task in focus view.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
screen shot 2019-02-11 at 1 17 29 pm

Desktop (please complete the following information):

  • OS: macOS
  • Browser: Chrome
  • Version: Latest

Deleting Selected Task Breaks Site

Using the task creator, start creating a task, select a tag, but don't finish creating the task.
Now go to settings and delete the tag you selected.
Close out of settings and the page crashes.

Text should clear after tag selection.

When selecting a class to add as a tag the text from the textbox is not cleared so you have to manually delete the text to continue adding more tags.

Simple comment change

Change the comments to add more detail than their respective method names or just delete them.

CS 2110 vs ENGRD 2110

Describe the bug
A clear and concise description of what the bug is.

When importing CS 2110, the exams for ENGRD 2110 are also imported. (they're the same class, and it's an obvious bug)

To Reproduce
Steps to reproduce the behavior.

Screenshots
If applicable, add screenshots to help explain your problem.

Environment (optional)

  • Browser [e.g. chrome, safari]
  • OS: [e.g. macOS]

Additional context (optional)
Add any other context about the problem here.

Wrong view switcher offset

Describe the bug
For example, if you are in 5-day view and you continue to click on it. It will still change the offset.

To Reproduce
Switch to monthly view, go into future for some months, go back to 5-day view and continue clicking it.

During Onboarding, can add same class multiple times

Describe the bug
During Onboarding, can add same class multiple times

To Reproduce
Steps to reproduce the behavior:

  1. Go to Onboarding
  2. Add a class twice

Expected behavior
It probably shouldn't allow the same class added repeatedly.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Unexpected date picker shift in focus view

Describe the bug

To Reproduce
Have a task in focus view. It does not even need to be an overdue task.

Screenshots
screen shot 2019-02-11 at 1 17 37 pm

Desktop (please complete the following information):

  • OS: macOS
  • Browser: Chrome
  • Version: Latest

Unnecessary Comment

On UndoToast, there is a comment for the param "props, props all of the props" which seems pretty unncessary

Mobile Focus View Button

In mobile view, the z-index on the focus view icon is messed up, so that if I scroll the page to where it overlaps with the progress bar, the progress bar blocks pointer events to the button.

image

Color Contrast

Some of the colors for tags do not work well with white texts.

Page Still Scrolls Vertically

Even with the new focus bar that scrolls independently, there's still a scroll on the entire page. That shouldn't happen.

image

Task Editor Losing Focus Regression

Describe the bug
When you are editing a task in the focus view, whenever you edited something and move to the another input box, focus will be lost. It's likely a regression bug originally raised in #88.

Expected behavior
Focus should not be lost.

Screenshots
If applicable, add screenshots to help explain your problem.

Exam titles are non-descriptive.

All exam titles merely say "Exam". It would probably be better if they said "3110 Prelim" or "2800 Final" to provide descriptive tasks.

Focus checkboxes are broken.

Checkboxes are broken in the focus bar. Specifically, when unchecked they render 0x0 and when checked they "break" outside their bounds. I believe you might be wrapping them in a div that doesn't support them.

nocheck
checkwrong

No Loading Screen

I just logged in to Samwise and I guess it took the server a long time to respond, but in the meantime, it let me in anyways, but with the default tags and no tasks, which freaked me out for a good second, as I thought everything had been deleted. It might be worth investing in a loading screen.

Unncessary Comment

In FutureView.jsx there is an unnecessary comment about what the task variable is

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.