User:Rando/Donate v2

From Noisebridge
< User:Rando
Revision as of 05:39, 18 December 2018 by Rando (talk | contribs) (Created page with "== donate.noisebridge.net v2 == donate.noisebridge.net (donate) is currently written in Ruby on Rails using rspec for testing. === Issues === # Very little of Noisebridge'...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

donate.noisebridge.net v2

donate.noisebridge.net (donate) is currently written in Ruby on Rails using rspec for testing.

Issues

  1. Very little of Noisebridge's other architecture is ruby.
    1. this creates a maintenance issue
    2. rails doesn't have the greatest reputation
  2. certain functionality is not available or exposed
    1. some critical-ish functionality like subscription cancellations is mention in the code but there is no way for the user to execute or know how to do it
    2. important financial reporting functionality is not available
    3. some nice to have functionality is available but not exposed
    4. the financial models are not aligned with good accounting practices

Implementation Plan

  1. Backend Implementation in Python
    1. Python is the best known and maintainable language currently
    2. using Flask
      1. Django was discussed and had some support, however, Flask is used in house
      2. Flask is growing faster the Django, though Django is still growing
      3. Flask is has more configuration options (can be negative)
      4. To increase support, a Flask class can/should be added to the current Python class schedule to recruit people to maintain architecture.
    3. APIs
      1. Stripe integrates with Python just fine.
      2. Paypal is just contructed links
  2. Front end uses unchanged/minimally changed migrated assets
    1. Donate does not require significant user interaction or front-end behavior implementation.
    2. Re-use of js/css/images/fonts from old doante site will used where-ever possible