sos's Issues
[Frontend] Dashboard for platform moderators
Create the dashboard to see help requests, user registrations and maybe a chart with help stats.
[Frontend] - Page to list all available Helps requests
[Backend] - Endpoint to List all help requests
Endpoint:
GET /api/helps
Return
HTTP code: 200
JSON Response:
[
{id: 1, title: "Help 1", description: "Help 1 Needed", ...},
{id: 2, title: "Help 2", description: "Help 2 Needed", ...}
]
[Backend] - Setup authentication for volunteer
Setup authentication and authorization for volunteer
- Volunteer needs to be authenticated to be able to provide help.
[Backend] - Endpoint to return a single Help
User Model
Users who manage the system
Fields:
- Name
- Password
- Phone number
[Backend] - Setup authentication for system user
Authenticated system user can:
- Approve/disapprove helps requests
- Approve/disapprove helps responses
Change db engine for dev branch
Change dev branch to use sqlite3 instead of psql.
Help Model
Fields:
- Help Type
- Title
- Description
- Fullname
- Phone number
- Alternative phone number
- Province
- County (Munícipio)
- District
- Neighborhood
- Street
- Number
- Status (pending, active, inactive, deleted)
[Backend] - Endpoint to Register new Volunteer
Endpoint:
POST /api/volunteers/create
Example Body:
{
volunteer: {
fullname: "John Doe",
email: "[email protected]",
password: "secret$123",
cellphone: "924323232",
province: "Luanda",
county: "Belas"
types_of_availability: "donation_food_clothes, psychological_support"
}
}
Returns:
Code: 201
Created Object
[Frontend] - Setup Redux store
[Backend] - Setup SMTP to send email notifications
Dependency Dashboard
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
Rate-Limited
These updates are currently rate-limited. Click on a checkbox below to force their creation now.
- Update dependency active_model_serializers to v0.10.13
- Update dependency bcrypt to v3.1.19
- Update dependency bulma-switch to v2.0.4
- Update dependency ruby to v2.7.8
- Update dependency spring to v2.1.1
- Update dependency will_paginate to v3.3.1
- Update dependency annotate to v3.2.0
- Update dependency bootsnap to v1.16.0
- Update dependency brakeman to v4.10.1
- Update dependency database_cleaner-active_record to v1.99.0
- Update dependency factory_bot_rails to v6.2.0
- Update dependency faker to v2.23.0
- Update dependency jbuilder to v2.11.5
- Update dependency listen to v3.8.0
- Update dependency pg to v1.5.4
- Update dependency prop-types to v15.8.1
- Update dependency rack-attack to v6.7.0
- Update dependency rails to '~> 6.1.0', '>= 6.1.7.6'
- Update dependency rspec-rails to v4.1.2
- Update dependency rubocop to v0.93.1
- Update dependency rubocop-performance to v1.19.1
- Update dependency rubocop-rails to v2.21.1
- Update dependency rubocop-rspec to v1.44.1
- Update dependency shoulda-matchers to v4.5.1
- Update dependency simplecov to v0.22.0
- Update dependency spring-watcher-listen to '~> 2.1.0'
- Update dependency web-console to v4.2.1
- Update dependency webpacker to v5.4.4
- Update postgres Docker tag to v12.16
- Update actions/checkout action to v4
- Update dependency @rails/actioncable to v7
- Update dependency @rails/activestorage to v7
- Update dependency @rails/ujs to v7
- Update dependency brakeman to v6
- Update dependency faker to v3
- Update dependency prettier to v3
- Update dependency rails to v7
- Update dependency react-redux to v8
- Update dependency react-router-dom to v6
- Update dependency rspec-rails to v6
- Update dependency rubocop to v1
- Update dependency rubocop-rspec to v2
- Update dependency ruby to v3
- Update dependency spring to v4
- Update dependency webpack-dev-server to v4
- Update dependency will_paginate to v4
- Update postgres Docker tag to v16
- 🔐 Create all rate-limited PRs at once 🔐
Edited/Blocked
These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.
- Update dependency bulma to v0.9.4
- Update dependency webpack-dev-server to v3.11.3
- Update react monorepo to v16.14.0 (
react
,react-dom
) - Update dependency database_cleaner-active_record to v2
- Update dependency shoulda-matchers to v5
Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
- Update dependency axios to v0.21.2 [SECURITY]
- Update dependency puma to v5 [SECURITY]
- Update dependency react-redux to v7.2.9
- Update dependency @babel/preset-react to v7.22.15
- Update dependency @rails/actioncable to v6.1.7
- Update dependency @rails/activestorage to v6.1.7
- Update dependency @rails/ujs to v6.1.7
- Update dependency @rails/webpacker to v5.4.4
- Update dependency @reduxjs/toolkit to v1.9.6
- Update dependency connected-react-router to v6.9.3
- Update dependency prettier to v2.8.8
- Update dependency react-router-dom to v5.3.4
- Update dependency redux to v4.2.1
- Update react monorepo to v18 (major) (
react
,react-dom
) - Click on this checkbox to rebase all open PRs at once
Detected dependencies
bundler
Gemfile
ruby 2.7.1
rails '~> 6.0.3', '>= 6.0.3.2'
pg '>= 0.18', '< 2.0'
puma '~> 4.1'
sass-rails '>= 6'
webpacker '~> 5.0'
turbolinks '~> 5'
jbuilder '~> 2.7'
active_model_serializers '~> 0.10.10'
bcrypt '~> 3.1.13'
rack-attack '~> 6.2', '>= 6.2.2'
will_paginate '~> 3.3'
bootsnap '>= 1.4.2'
byebug undefined
pry-rails undefined
factory_bot_rails undefined
faker undefined
rspec-rails '~> 4.0'
annotate '~> 3.1', '>= 3.1.1'
brakeman undefined
listen '~> 3.2'
web-console '>= 3.3.0'
spring undefined
spring-watcher-listen '~> 2.0.0'
rubocop undefined
rubocop-performance undefined
rubocop-rails undefined
rubocop-rspec undefined
database_cleaner-active_record '~> 1.8'
shoulda-matchers '~> 4.3'
simplecov undefined
github-actions
.github/workflows/ci.yml
actions/checkout v2
actions/setup-ruby v1
postgres 12.2-alpine
npm
package.json
@babel/preset-react 7.10.1
@rails/actioncable 6.0.3
@rails/activestorage 6.0.3
@rails/ujs 6.0.3
@rails/webpacker 5.1.1
@reduxjs/toolkit 1.3.6
axios 0.19.2
babel-plugin-transform-react-remove-prop-types 0.4.24
bulma 0.9.0
bulma-steps 2.2.1
bulma-switch 2.0.0
connected-react-router 6.8.0
prop-types 15.7.2
react 16.13.1
react-dom 16.13.1
react-js-pagination 3.0.3
react-redux 7.2.0
react-router-dom 5.2.0
redux 4.0.5
turbolinks 5.2.0
prettier 2.0.5
webpack-dev-server 3.11.0
ruby-version
.ruby-version
- Check this box to trigger a request for Renovate to run again on this repository
[Frontend] - Page to register new volunteer
Relationship between Volunteer and Help
[Backend] - Specify URI for violation reports
config/initializers/content_security_policy.rb
policy.report_uri "/csp-violation-report"
[Backend] - Implement interface with Twitter
Every Help Request registered, after approved, should be published on Twitter Platform with hashtags: #SOSAngola and #COVID-19
[Frontend] - Fix navigation link to homepage
As we already have the site name as a navbar link I think we don't need need to add "Página Inicial" again linking to the same page.
The goal is to keep only the site name linking to homepage route.
Province Model
Fileds:
- Name
Seed Data:
- All Provinces of Angola
[Backend] - Endpoint to Register new Help
Endpoint:
POST /api/helps
Example Body:
{
help: {
help_type: "donation_food_clothes"
title: "Need help with food for my children",
description: "We don't have anything to give my children to eat. Please any kind of help will be appreciated",
fullname: "Jane Doe",
email: "[email protected]",
cellphone: "924323233",
alternative_cellphone: "994323233",
province: "Luanda",
county: "Belas",
district: "Kilamba",
neighborhood: "Kilamba",
address: "Rua XYZ, Edificio K, Nº 130 - 2º Andar ESQ"
}
}
Returns:
Code: 201
Created Object
Setup Heroku and Setup Continuous Deployment
[Backend] - Setup serializer
Privacy Page
/politica-de-privacidade
Page with privacy policy text
Volunteer Model
Fields
- Fullname
- Phone
- Password
- Types of available to provide
- Province
- County (Munícipio)
How it Works page
/como-funciona
Page explaining how the platform works
Terms of Use Page
/termos-de-uso
Page with terms of use
Sugestão de mudanças conceituais
Ainda estou criando meu ambiente de desenvolvimento em ruby/rails e aproveitei ir pensando no workflow. Do jeito que está hoje a base do sistema, acredito que precisa de algumas mudanças:
- As pessoas que realmente precisam de ajuda, não têm condições de ter acesso ao um PC com internet para submeter os seus pedidos de ajuda. Então acredito que será algo mais do tipo: "pessoas que identificaram necessitados ou necessidades'. Significa que o formulário deve ser ajustado para indicar onde, o quê ou quem precisa de ajuda (não a pessoa que está preenchendo o formulário).
- A parte de 'Os pedidos de ajuda serão analisados pelos nossos colaboradores voluntários antes de serem publicados.' devem ser as instituições de caridade já existentes, que terão a plataforma para identificar os mais necessitados e focalizar seus esforços neles.
[Backend] - Setup SMS Gateway to send SMS notifications
[Frontend] - List of Helps Page
Page with a list of Helps requests
[Frontend] - Add acknowledgment on Footer
For used Icons:
Icons made by Freepik from www.flaticon.com
For original idea:
Based on https://app.queroajudar.org/
[Frontend] - Page to show single Help
[Frontend] - Page to register new Help
Page accesible from:
/preciso-de-ajuda
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.