Code Monkey home page Code Monkey logo

duwara_volunteer's People

Contributors

bwanicur avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

duwara_volunteer's Issues

High Level Plan / Objects Glossary

This document will outline the high level arch decisions (not set in stone) and objects that we will need to create this application. Simply put, it is a way for Volunteers to sign up for events that Duawara Org has organized.

Objects

User

  • different roles:
    • Admin
    • Organizer (can create / manage events)
    • Volunteer (base role)
  • email / password required for auth / reg
  • phone highly encouraged, but not required
  • attributes include the typical atts but also age
    • we need to the age so we can exclude minors from some events
  • has_many events

Event

  • Location (address)
  • start_time (end_time is optional)
  • google map or other link
  • contact info
  • has_many volunteers

Event Invitation

  • joins the Event to volunteers
  • also contains the state of the invitation (yes, no, pending, waiting_list)
  • has unique invite hash value used for URL invitations
  • will hook into email (and maybe SMS) notifications / reminders
  • belongs_to event
  • belongs_to user (volunteer)

Location

  • address
  • google map or other link
  • this object is NOT related to events. it only exists to make pre-populating the event address fields easier for the users

Tags

  • used to tag events / volunteers
    • can be used to exclude / include volunteers on certain events

More objects are coming. This is just the start / main objects.

The Plan

We will create issues for each feature and/or page of the application. The details for implementation will be detailed in each issue. I am a firm believer in early PRs. By that, I mean open your PR very early in the process and include "WIP" in the title. This gives us a chance to discuss the high level details of the code early on and formulate a approach. Hopefully we can end up with a fairly uniform codebase.

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.