Skip to content

labs12-section-calendar-template/Front-End

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Section Calendar Template Manager

Contributors

Ilya Yelizarov Jacob McFaul Max Trestman Terrell Tullis Zechariah Drinkhall


GitHub license Netlify Status React badge moment badge Contributor Covenant

Overview

Our product, Calendr, allows users, to create timeline based templates and populate them with events. The events are conveniently displayed on the user's calendar, filtered by template, for easy viewing and editing.

The project can be viewed here, https://calendr.netlify.com/

Features

  • Login with OAuth
  • Create a new calendar template
  • Update and edit template
  • Add events to the template, including name, day, time, and description
  • Update and edit events
  • Repeat event for cycle of template
  • Display events on calendar filtered by template
  • Add a group
  • Join a group
  • Mobile responsiveness
  • Payments using the Stripe API

Frameworks and Libraries

React

  • Robust, popular JavaScript front-end library
  • Reusable components
  • Un-opinionated
  • React Router great for building single page applications

Moment.Js

  • JavaScript library removes need for native Date object
  • Simplifies date and time manipulation
  • Free and open-source

Reactjs-popup

  • Simple popup component
  • Easy to use
  • Lightweight

React-toastify

  • Notification library
  • Easy setup and use
  • Easily customizable

Node-sass

  • Preprocessor providing added features to CSS
  • Binds Node.js to C version of Sass
  • Nesting,variables,mixins

Antd

  • Popular React UI-Framework
  • Comes with React components out of the box

Front end deployed to Netlify

Back end built with:

Node.js

  • JavaScript run-time environment
  • Easily scalable
  • Easy to learn
  • Write server-side applications in JavaScript
  • Large support community

Express.js

  • Node web application framework
  • Fast and un-opinionated
  • Large support community
  • Ships with a number of methods and middleware

PostgreSQL

  • Free,open-source RDBMS
  • Efficient and multi-functional
  • Easy deployment to Heroku
  • Large community

APIs

Passport (google-oauth20)

  • Authentication middleware for Node
  • Easily integrates into an app
  • Allows users to login with a Google account
  • Authenticates Google users with OAuth 2.0 tokens

Stripe (react-stripe-elements)

  • React-stripe-elements is a plugin for Stripe
  • Stripe lets our users pay for the service through our website
  • User's payment information is saved as a token
  • Safe method for dealing with sensitive payment details

Installation

Installing this project involves a couple steps. First, Node.js needs to be installed on your machine. To begin, clone both the Frontend and Backend repositories from https://github.com/labs12-section-calendar-template and download them on your local machine. In the Backend, run yarn to install the needed dependencies. Then, run yarn server from the root of the directory to start the backend server on http://localhost:3300. In the Frontend, cd into the calendr directory and run yarn. While still in the calendr directory, run yarn start. Navigate to http://localhost:3000 to view the locally deployed site.

Environment Variables

To use the app properly, please set up environment variables on your end. In Front-End, an .env file is provided in the root of the directory. Please move this file inside of the calendr directory, right below the src folder. Additionally, in the root of the Backend directory, create a .env file with the text below:

PORT=3300
NODE_ENV=development
#FRONT_END_URL=https://calendr.netlify.com
FRONT_END_URL=http://localhost:3000

Contribution

Please follow our guidelines when contributing to our product, contribution conduct

Feature Requests

Feel free to let us know about new and innovative features you would like to have added to our product. Please contact the contributors of this app on their social media accounts at the top of this page.

Pull Requests

Please submit a pull request with your changes after carefully reviewing and testing your code. Make sure to update the README.md file with the details of your code. Remember to follow the Contributor Covenant and MIT License guidelines when adding your changes to our app.

Attribution

Contribution guidelines were adopted from this good-Contributing.md-template.

Backend documentation can be found here: Backend

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published