linkvan / linkvan-api Goto Github PK
View Code? Open in Web Editor NEWLinkvan API.
Linkvan API.
Overview of main features needed for the initial version of the Admin Interface. Each feature will have one or more issues with implementation details and relevant discussions.
Checked items have one or more issues created detailing their requirements.
When you Click on the Name of the Facility in the Main Facility Menu it goes to a different page to when you click on Edit in the Hamburger Menu.
The analytics page(s) should be its own section for now, because it might require some work to handle all the data without timing out. The Dashboard can have a simplified version of the analytics after the implementation becomes more clear and stable.
What to display:
Add a small data dictionary for translating services and welcomes synonyms.
API: /facilities?service=shelter&search=keyword
When /facilities
return no facilities.
At the moment, Heroku is not running migrations on deploy.
Facilities can have many phone numbers.
Each phone number record will have the phone number and a notes.
This will have to be done in 2 steps.
Frontend - linkvanproject/linkvan-web#67
The script should:
Note: Add messages to console letting the user know what commands are run at each step.
When you Click on Edit Facility from the Hamburger it takes you to a page and it is not clear that this first of 2 pages, The button that states "Update Facility" takes you to the next page and then you can add / change more details. Once you make these changes there is no clear way to exit the facility.
<api url>/notices?type=<notice type>
Note: type is an optional parameter to filter notices by notice type.
<api url>/notices/slug
Note: slug is an attribute of notices and is included in the index api endpoint.
Re: Notice data. The show action will also serialize the notice's content, while the index page leaves it out of the returned data.
In order to setup the workflow for RSpec.
Some potential sources to help with the task:
https://github.com/neonmate/wintermute/blob/master/.github/workflows/test.yml
https://dev.to/abdellani/github-actions-to-run-rubocop-and-rspec-tests-on-rails-with-postgres-47i
https://www.pibit.nl/github/actions/rails/postgres/rspec/tutorial/example/2019/09/23/github-actions-with-rails-postgres-and-rspec/
https://medium.com/@woodpecker21/using-github-actions-for-unit-and-integration-tests-in-rails-e2a3b4c307f9
Explain how to run the server through docker (bin/docker/*
scripts).
After logging into the Admin Page I have a screen with Facilities CSV and User CSV. I clicked on them and nothing happened.
With the introduction of a GitHub workflow to use Rubocop to lint submitted code, we need to fix issues reported by it.
This ticket is supposed to be the placeholder for this effort.
When the user asks to delete a facility, they should also select a reason. Then the facility should be marked as discarded.
Reasons:
Add/Edit Crisis Lines, Disclaimers and About Us pages (html page).
API endpoint to return the page content.
One option would be to make it a new type of Notices.
AS an Admin
I WANT TO see a list of users
SO I can View, Edit, Add, Delete, Approve/Disapprove
GIVEN I'm on a list of users
THEN I want to see information of each user.
List of expected information:
GIVEN I'm seeing list of users
WHEN I click on Add New User
THEN I want to see the new User form
AND If saved the new created user should receive an 'Signing Up' status
AND an email to proceed their sign up should be sent to their email
List of expected fields:
GIVEN I have the right to edit a user
WHEN I click on its Edit action
THEN a Edit User form similar to Sign Up form should be shown
GIVEN I have the right to delete a user
WHEN I click on its Delete action
THEN I want the see a confirmation dialog
AND if I confirm, I want the user and their facilities to be removed
As an Admin
I WANT TO see a list of alerts
SO I can View, Edit, Add, Delete, Active/Deactivate
GIVEN I'm on a list of alerts
THEN I want to see information of each alert.
List of expected information:
GIVEN I'm seeing list of alerts
WHEN I click on Add New Alert
THEN I want to see the new Alert form
List of expected fields:
GIVEN I'm seeing list of alerts
WHEN I click on a alert's Edit action
THEN I want to see the edit Alert form
GIVEN I have the right to delete an alert
WHEN I click on its Delete action
THEN I want to see a confirmation dialog
AND if I confirm, I want to alert to be removed
For reference to the discussion about how Frontend and Backend will communicate to make this feature possible, please refer to:
linkvanproject/linkvan-web#33
For an analysis of the previous analytics implementation:
https://github.com/linkvan/linkvan-api/wiki/Previous-Data-Analytics-description
In the README.md file, at the 'Setting up an environment' section, it might be a good idea to add an instruction to the user to run 'bundle install' command, just before running 'rails db:create', as this last command complains about the lack of rake.
Just a little enhancement in the docs, but might be useful for beginners (like me).
As an Admin
I WANT TO see a list of notices
SO I can View, Edit, Add, Delete, Publish/Unpublish
GIVEN I'm on a list of notices
THEN I want to see information of each notice.
List of expected information:
GIVEN I'm seeing list of notices
WHEN I click on Add New Notice
THEN I want to see the new Notice form
List of expected fields:
GIVEN I'm seeing list of notices
WHEN I click on a notice's Edit action
THEN I want to see the edit Notice form
GIVEN I have the right to delete an notice
WHEN I click on its Delete action
THEN I want to see a confirmation dialog
AND if I confirm, I want to notice to be removed
We'll start fresh in a new database. For that we'll need to import data from the old app to the new one. The script will be used to test the new app, and when we are confident we can deploy to production, we'll start fresh again with the latest production data. After the deploy has been confirmed as successful we'll change the DNS to point to the new app and then we'll need to plan how we'll deal with the old data.
A good starting point to use as blueprint:
https://github.com/Ruby-Starter-Kits/Docker-Rails-Template
Other worthy sources:
At this moment, it's hard to debug issues when they happen.
We need to improve logs and probably return more meaningful error messages.
Heroku Database's mini tier has a limitation of 10k rows. When the limit is reached, any write operation in the database leads to a crash.
Current facilities take around 8.7k rows. With 89 visits we had 1.4k impressions, which means 15 impressions per visit. Sounds quite right. To unblock testing, we temporarily removed the analytics feature and removed its data.
Now, while we will have to upgrade the database to the next tier, it seems we should rethink the approach we're taking for analytics. At the very least, we could remove the impressions table and instead add the impressions as a serialized column in the visits table. It would simply contain the list of facility ids displayed to the user.
A brief description:
The analytics feature creates a row on the Visits table for each session. Within a session each time the user goes to a page a Event is registered (one row), and on Impression per returned facility is created (one row per facility returned by the api).
A session is defined by all accesses from a user inside a window of 30mins.
AS a Facility Admin
I WANT TO see a list of my facilities
SO I can View, Edit, Add, Delete
AS an Admin
I WANT TO see a list of all facilities
SO I can View, Edit, Delete, Approve/Disapprove Facilities.
GIVEN I'm on a list of facilities
THEN I want to see an overview of each facility.
List of expected informations:
GIVEN I'm seeing list of facilities
WHEN I click on Add New Facility
THEN I want to see the new Facility form
AND I should be the owner of the created facility.
List of expected fields:
GIVEN I have the right to edit a facility
WHEN I click on its Edit action
THEN a Edit Facility form similar to the new facility form
GIVEN I have the right to delete a facility
WHEN I click on its Delete action
THEN I want the see a confirmation dialog
AND if I confirm, I want the facility to be removed of the list
When Editing a Facility if you change the status between Live and Pending Review the order it appears in the facility list changes. The sort order is also not clear nor can it be changed.
Change facility API services to have name and note attributes
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.