Skip to content
This repository has been archived by the owner. It is now read-only.
A website to facilitate the logistics of running a Speech and Debate club
Branch: master
Clone or download
Pull request Compare This branch is even with EVSD:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.meteor
both
client
collections
public/images
server
.gitignore
README.md
bundle.tgz
deploy
deploy-no-update
package.json

README.md

EVSD-SITE

Purpose

The goal of this project was to create a website which will facilitate the logistics of running a speech and debate team, including club registration/payment, tournament registration/payment, and mass communcation. The project utilizes the Meteor JavaScript framework, Materialize CSS Framework, Stripe Checkout, and several Meteor packages which are listed below.

User Roles on Website

  • Admin: Controls the website. Can add tournaments, change user roles, and manually change user balances.
  • User: Student
  • Frozen: users initially frozen until approved by admin. Admin can also freeze users to prevent them from signing up from tournaments.
  • Officer: to be added feature

Website Structure

A side navigation bar allows the user to navigate between pages, and a footer is located at the bottom of the page.

If no user is logged in, the website contains the following:

  • Homepage: contains testimonials and content describing the benefits of participating in Speech and Debate programs.
  • Signup page: allows the user to create an account, including basic profile information and waiver upload functionality. Upon signup, the user will be redirected to login, then to a page where the user can pay a contribution to the club to cover costs of running such a program.
  • Login page

If a user is logged in, the website contains the following:

  • Profile Page: user can view the information they entered on signup, as well as edit this information.
  • Logout
  • Account Balance: user can view a history of payment transactions as well as their current balance. User can also pay online through Stripe to increase their balance manually.
  • My Tournaments Page: user can view the tournaments they are currently signed up for. They can edit these entries or delete them.
  • Tournament Signup: user can signup for tournaments which are created by the admin. There is an option for partner or no partner tournaments. If partner, user can select from a list of other available users as a partner. Payment with Stripe Checkout is implemented for automated tournament payments.

Admin specific content:

  • Create a Tournament: admin can create tournaments and decide what type of tournament, partner needed or not, judge needed or not, signup deadline, and price.
  • Current Tournaments: admin can edit tournaments or delete them.
  • See Current Signups: admin can approve tournament signups from users.
  • Log Checks for Users: admin can log checks for users if, in any circumstance, Stripe Checkout online is not appropriate.
  • Change User Balance: admin can change user balances manually to add or deduct a specified amount.
  • Profile: admin can see site users and change their roles here (unfreeze their account after signup, etc).

Features To Be Added

  • Mass emailing for communication
  • UI Improvements

Sources (Packages and Frameworks Used)

  • Project: Meteor JS Framework
  • UI: Materialize CSS Framework
  • Payment: Stripe Checkout
  • Packages:
  • meteor-base@1.0.4
  • mobile-experience@1.0.4
  • mongo@1.1.11
  • blaze-html-templates@1.0.4
  • reactive-var@1.0.10
  • jquery@1.11.9
  • tracker@1.1.0
  • standard-minifier-css@1.2.0
  • standard-minifier-js@1.2.0
  • es5-shim@4.6.14
  • ecmascript@0.5.8
  • insecure@1.0.7
  • accounts-ui@1.1.9
  • accounts-password@1.3.0
  • accounts-base@1.2.11
  • check@1.2.3
  • alanning:roles
  • kadira:flow-router
  • kadira:blaze-layout
  • themeteorchef:bert
  • mrgalaxy:stripe
  • ostrio:files
  • npm-bcrypt
  • shell-server
  • materialize:materialize
  • edgee:slingshot

Code Credits

  • Project Oversight and Guidance: Artem Raskin
  • Website Structure (Navbar, Icon): Michelle Li, Richard Huang
  • Homepage Content: Connie Lu, Michelle Li
  • Footer: Jackson Chui, Richard Huang, Michelle Li
  • User Profile: Jackson Chui
  • Account Balance: Michelle Li
  • Tournament Signup: Jackson Chui
  • My Tournaments: Jackson Chui
  • Create Tournament: Jackson Chui
  • Current Tournaments: Jackson Chui
  • Log Checks for Users: Michelle Li
  • Change User Balance: Michelle Li
  • General Stripe Checkout implementations: Michelle Li
  • About Pages: Joshua Qin, Michelle Li
  • Member Resources Pages: Joshua Qin, Michelle Li
  • Login: Jackson Chui, Richard Huang, Michelle Li
  • Logout: Richard Huang, Jackson Chui
  • Signup: Jackson Chui, Michelle Li, Richard Huang
  • General UI: Jackson Chui, Michelle Li, Richard Huang, Connie Lu
  • Deployment / AWS: Jackson Chui
  • Google Analytics: Richard Huang
  • Readme Documentation: Michelle Li
You can’t perform that action at this time.