Giter Site home page Giter Site logo

ahmedhamodi / onemax Goto Github PK

View Code? Open in Web Editor NEW
3.0 5.0 1.0 54 MB

OneMAX Website - This is an initiative by the MAXGala team and volunteers to set up a site where individuals can nominate members of their communities based on the good activities they are doing locally.

HTML 2.53% CSS 10.42% JavaScript 87.04% Shell 0.01%

onemax's Introduction

OneMAX

Project Goal

At OneMAX, our goal is to create a fully immersive website for individuals to nominate other individuals in their respective communities for ourstanding work they are doing. This website has a goal of promoting social good and involvement in our local communities. We have a dua (prayer) voting system so other users of the website can give duas to these outstanding individuals.

Technicals

We are using React for our frontend and a combination of Go and Ruby for our backend, running on top of a PostgreSQL database. We are currently hosting the website using a Heroku application. It can be accessed at https://onemax.org/.

Team

We are all volunteers at MAXGala, a organization based in Toronto. The technical team members are Ahmed Hamodi (frontend), Arsalan Rana (frontend), and Saman Alvi (backend). Shout out to this amazing group of people for bring this project to light.

Release Information

The current release date is set for August 31st.

Development

Authentication

To get the Facebook and Google Authentication working, we need to be hosted on a certified HTTPS website. Fortunately, the Heroku app we host on does cerification management for us. However, for development on local environments, we need to toggle the environment variable for HTTPS to true. Default is false. This tag can be found in the root folder, in the .env file.

Deployment

Once your environment is set up for authentication to work, you can begin making coding changes and start deployment. Follow the following steps:

  1. Copy the repo: git clone [email protected]:ahmedhamodi/onemax.git
  2. Add the development heroku host: git remote add dev https://git.heroku.com/intense-journey-59867.git
  3. Make a branch: git checkout -b user_name\project_name
  4. Make changes to branch
  5. Create PR on github repo: https://github.com/ahmedhamodi/onemax
  6. Once PR is approved, merge into GitHub master branch
  7. Push to development branch and test to make sure no environment specific issues: git push dev master
  8. Push to production branch: git push heroku master

onemax's People

Contributors

ahmedhamodi avatar arsarana avatar dependabot[bot] avatar arsidada avatar snalvi avatar

Stargazers

 avatar Shehryar avatar  avatar

Watchers

James Cloos avatar  avatar AhmedAKhan avatar  avatar Shehryar avatar

Forkers

arsidada

onemax's Issues

Add banner to the top of the page if user's browser is not supported

Description

Some users may be using browsers that aren't compatible with the frontend. In order to avoid this, we need to read a user's user-agent value and then add a persistent banner to the top to say that their browser is unsupported and they should use a supported browser. e.g. of unsupported browser would be Internet Explorer or older versions of Safari.

Acceptance Criteria

  • Detect user's user-agent
  • Compile list of supported browsers
  • Add banner to the top of the page if the user's user-agent is not in the supported browser's list

Add support for links to hero's social media

Description

Beta tests identified that having access to a hero's social media would be a good way for user's to connect or follow the heroes.

We have decided to let the nominators provide the following social media links:

  1. Instagram
  2. Facebook
  3. Twitter
  4. LinkedIn

These would appear on the hero cards as icons for the respective social media.

Acceptance Criteria

  • Add 4 optional fields in the submit and edit modals to allow entering links for social medias
  • Add validation logic to the fields to verify the links actually pertain to the appropriate social media
  • Add new columns to the database for these new fields
  • Update the back-end ruby app to now use these new fields when a new nominee is submitted or a nominee is editted

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.