Add Bulk Upload CSV
Closed this issue · 12 comments
Here is a video demo of the feature: https://www.loom.com/share/7538d9060d464570bb36282771c7c20b?sid=1e0389b1-4d86-449d-8e8a-84fefbded3fe
Important Notes:
- Announce when your toggling bulk upload or single upload to screen readers
- Validate URLs uploaded - announce any issues
- Validate CSV columns and data - announce any issues
- Announce successful upload
Here is a sample CSV: https://github.com/EqualifyEverything/eudaimonia-wp/blob/main/websites.csv
@heythisischris said he was interested in jumping on this. Bounting this issue. He is going to submit a quick proposal for approval. Adding this to our next Sprint, since @heythisischris said he can get the issue done in a few days.
Always excited to work on power tools. Here we go:
Overview
We're building a bulk CSV import tool for Equalify. The idea is to allow users to upload CSV lists of properties with the following attributes:
- Name
- URL
- Discovery
We'll have to intelligently detect what columns correspond to what fields. We can leverage GPT-4o for this purpose.
Steps
-
Create API endpoint to preview Bulk Upload (POST/bulk/preview
) -
Create API endpoint to handle Bulk Upload (POST/bulk/upload
) -
Create API endpoint to roll back Bulk Upload (POST/bulk/rollback
) - Add "Bulk Upload" button to Properties screen
-
Create Start Bulk Upload route -
Create Preview Bulk Upload route - Create Bulk Upload results route
- Ensure accessibility across all new routes
- Test bulk uploaded properties and ensure everything is working as expected
Budget
The requested bounty is $500
for roughly 8 hours
of development spread across 2 days
.
This comes out to an effective rate of $62.50/hour
.
Timeline
I intend to have this completed and ready for by August 23rd, 2024
.
Approved.
$250 payment initiated.
EqualifyEverything/equalify-dashboard#60
Created a pull request, would consider this issue complete after it's approved.
adding @kevinandrews1 - Kevin you should be able to test adding multiple properties under "Properties" at https://equalify.dev
@heythisischris: There is currently no validation. We need to validate:
- to make sure you're adding a CSV
- the csv has the correct column names
- the url is a valid url
- the type is a valid taype.
It incorrectly reported that this was successfully added:
name,url,type
Equalify Single,https://decubing.com,fake
Equalify Sitemap,httpfdfecubing.com/sitemap.xml,sitsfsdfemap
Feel free to push to staging and let me know when it's up there to test.
EqualifyEverything/equalify-dashboard@d154692
@bbertucc Validation is added and pushed to staging! Handling everything that you listed above. @kevinandrews1, you can start testing over at https://equalify.dev.
@kevinandrews1 any updates on this? It's ready for you to test.
@bbertucc @heythisischris I will get to this and report back by the end of today.
For @heythisischris:
- Went to equalify.dev
- Logged in
- WEnt to Properties
- Activated Bulk Upload CSV
- I get the "reports page loaded" message with JAWS
- There should be a message that tells you the upload was successful. Basically all I get with JAWS spitting this out at me "Showing first 10 rows name url type Equalify Single..." The upload message is cleaner and more informative.
Otherwise this is great! When I press submit I get the notification the property was successfully added.
Reassigning @heythisischris to add an upload confirmation
EqualifyEverything/equalify-dashboard@54d10c2
@bbertucc added upload confirmation, I think this task is completed and ready to merge into production.
Thanks! Looks good.