Giveth / impact-graph

MIT License
49 stars 18 forks source link

Add Endaoment projects to our DB #1598

Closed divine-comedian closed 1 month ago

divine-comedian commented 4 months ago

We need to parse the information from the list of projects provided by Endaoment, around 8000 projects will be added and we may need to handle some custom fields.

the project owner for all Endaoment projects will be a dummy profile we will make to handle endaoment projects

standard fields will include:

custom fields:


the first part of this issue is we need to define how we want to receive the data from the endaoment team, what is the ideal JSON object format to handle this information and add this into our DB?

Endaoment Project data dump

Here is all the projects and project info that we need to import:

tri-chain-deployments.csv

divine-comedian commented 2 months ago

Might be related to staging problem from before - the migration is not apply correctly. Mohammad needs to investigate more and coordinate with DeVops. Heard that meriem had same problem on staging. It is a staging problem - was able to execute migration on local with no problems

we can provide a preview link once this is fixed. when we want to release it we want to know the admin wallet address.

on staging we set maryjaf's address to test notifications

mohammadranjbarz commented 2 months ago

@divine-comedian @maryjaf You can test it now https://giveth-dapps-v2-git-4280showendaomentprojectsdetail-givethio.vercel.app/projects/ngo

LatifatAbdullahi commented 2 months ago

@mohammadranjbarz

We have 3181 Projects here enn

3614 on the CSV file

image

Seems like some are missing, also @divine-comedian mentioned earlier that they were over 8000

Also, what exactly should I verify? @divine-comedian

These fields? If they are present? and where? Giveth Staging or the AdminJs Panel ?

standard fields will include:

project title project description banner image (endaoment uses a generic category based banner for their projects - we should use this) recipient adresses & networkId projects should be verified custom fields:

endaomentId endaomentLogo

divine-comedian commented 2 months ago

@LatifatAbdullahi - we should verify that the projects are present and that the standard fields have been included in the project data - you can check if this is valid from the adminJS panel for staging.

I think we are still missing the endaoment IDs which I will need to get from Endaoment org - we're still able to launch this feature without the endaoment IDs so I wouldn't call it a blocker.

LatifatAbdullahi commented 2 months ago

@divine-comedian @mohammadranjbarz

Test Update

Standard fields will include:

Edaoments Projects Present: Pass (But not sure the exact number of projects expected to be in the DB) Project title : Pass Project description: Pass banner image (endaoment uses a generic category based banner for their projects - we should use this) : Pending Recipient adresses: (Wallet Address): Pass NetworkId: Fail Projects should be verified: Pass

custom fields: EndaomentId: Pending EndaomentLogo: Pass

mohammadranjbarz commented 2 months ago

NetworkId: Fail

Thanks @LatifatAbdullahi for testing in detail Just what do you mean by NetworkId: Fail ? can you explain it for me?

LatifatAbdullahi commented 2 months ago

We need to parse the information from the list of projects provided by Endaoment, around 8000 projects will be added and we may need to handle some custom fields.

the project owner for all Endaoment projects will be a dummy profile we will make to handle endaoment projects

standard fields will include:

  • project title
  • project description
  • banner image (endaoment uses a generic category based banner for their projects - we should use this)
  • recipient adresses & networkId
  • projects should be verified

custom fields:

  • endaomentId
  • endaomentLogo

the first part of this issue is we need to define how we want to receive the data from the endaoment team, what is the ideal JSON object format to handle this information and add this into our DB?

Endaoment Project data dump

Here is all the projects and project info that we need to import:

tri-chain-deployments.csv

Hello @mohammadranjbarz Based on the comment here, the standard fields should include all the listed including, the Recipient address and Network ID

And there was no section for Network ID when we view any Endaoment project at the AdminJs

https://github.com/user-attachments/assets/cf2e5703-8f99-406f-91e6-06d9a3d113e3

Let me know if other wise, thanks

divine-comedian commented 2 months ago

@LatifatAbdullahi you might need to click SHOW instead of EDIT when viewing the project from the admin panel in order to see its recipient addresses

However I was curious @mohammadranjbarz I noticed that when we store the Network field that most of the fields are empty except for GNOSIS and MAIN_NET - no other network fields are visible

https://github.com/user-attachments/assets/8b847797-3e4f-4274-967c-cb1f6ceee3ee

LatifatAbdullahi commented 2 months ago

@divine-comedian @mohammadranjbarz

The Network ID field is present when User check the "Show" section of the Projects, thanks @divine-comedian

image

mohammadranjbarz commented 2 months ago

@LatifatAbdullahi I fixed it now you can see networks ( We show network name instead of networkID in the admin panel)

https://impact-graph.serve.giveth.io/admin/resources/Project/records/225595/show

Screenshot 1403-05-10 at 4 15 49 in the afternoon
divine-comedian commented 2 months ago

@mohammadranjbarz

We have 3181 Projects here enn

3614 on the CSV file

image

Seems like some are missing, also @divine-comedian mentioned earlier that they were over 8000

Also, what exactly should I verify? @divine-comedian

These fields? If they are present? and where? Giveth Staging or the AdminJs Panel ?

standard fields will include:

project title project description banner image (endaoment uses a generic category based banner for their projects - we should use this) recipient adresses & networkId projects should be verified custom fields:

endaomentId endaomentLogo

We'll need to figure why these amounts are different

mohammadranjbarz commented 1 month ago

@divine-comedian @LatifatAbdullahi I deleted all endaoment projects and stuff related to them like donations then import them again, now there is 3613 endaoment projects in our DB. The banner images not shown correctly, but once we deploy the FE it would be resolved because now they are trying to show an imgae that doesn't exist in our FE

LatifatAbdullahi commented 1 month ago

@mohammadranjbarz

Please let me know once its ready, so I can retest them. Thanks

mohammadranjbarz commented 1 month ago

@mohammadranjbarz

Please let me know once its ready, so I can retest them. Thanks

Sure

LatifatAbdullahi commented 1 month ago

@mohammadranjbarz

On stage, the projects are still not up to 3614, please take a look

wi

divine-comedian commented 1 month ago

perhaps the endaoment category tag is not being applied correctly to all the imported projects?

mohammadranjbarz commented 1 month ago

perhaps the endaoment category tag is not being applied correctly to all the imported projects?

416 items

["W00","I00","S00","L00","O00","E30","T22","V00","P00","R00","G41","H00","I70","P87","X21","K00","E00","G30","P60","T20","D00","X20","P62","K30","G00","K31","A00","W99","R22","E86","W30","Q12","B50","A62","P20","A90","M99","B42","B99","P40","E60","O50","H80","D20","A30","B12","P84","B20","T31","T12","P32","F01","O20","K12","A50","S82","L41","E24","B24","S01","A51","N70","E11","C50","O55","E50","X99","P30","P85","S30","W12","M00","E20","D30","B82","B11","C30","H30","T30","R23","E99","M12","C60","G96","K40","D33","O23","E01","Q30","B90","","S32","Q21","A69","E80","B25","D31","L25","B00","L12","R12","E42","A70","P43","Q32","C00","Q39","B43","D34","F32","B21","S20","T50","Z99","J20","R20","M20","N62","O54","B05","C01","B40","H20","O99","A20","T21","P80","R99","A12","E40","Q33","A56","F33","B80","B60","R28","I01","K25","G32","P99","G81","A31","P45","R60","G80","J22","W11","I99","G02","X19","Y03","C36","D50","T00","U00","Z00","F30","T99","R26","T70","A99","F80","G98","L20","U50","L99","B70","G48","F00","P33","P82","P51","P50","Q50","J00","E32","Y00","S99","N00","O12","G01","X22","W24","G40","P11","R24","A57","P27","N32","H43","I40","A25","J30","A61","X00","G44","X30","X50","E21","E70","F99","R61","R01","Q20","F22","W05","Q00","H60","F42","S02","G84","Q40","B28","L21","U20","A68","N60","G43","W70","Q71","D61","A60","G99","A23","I43","O31","A80","B01","U30","P86","X12","E22","G11","D40","T02","I80","Q11","W02","B30","A52","E12","H96","X83","C41","O42","P31","Q35","H48","E62","G20","F40","P52","A19","N20","I05","H05","H44","D01","O30","M01","H90","Y12","H12","T01","X84","K34","A40","L30","J05","P74","T03","Q05","B83","O41","P46","F70","j00","U05","N40","V30","P01","A11","B41","O21","P42","F20","IIn","B92","C20","F19","N30","P70","V22","P75","B84","W01","w00","A01","B02","s00","L01","H81","D03","O53","I20","A63","F60","D12","N99","K20","S40","T23","K35","M23","A65","P12","N01","P81","I72","X40","C40","E65","D60","A32","L40","X70","X80","Q70","A27","H03","C12","H50","A26","A33","K01","L80","N31","P19","S03","O22","C34","C32","Sun","Q31","H99","I83","Q23","A6E","I71","Q99","G83","C35","R40","S12","G25","C05","K36","Y02","U40","V05","G90","I50","U12","N12","F53","U99","X01","H98","P58","C99","P73","H92","K99","O11","R02","U03","I73","G12","E02","B03","U41","G05","A54","O01","M40","E92","N69","J21","S80","P28","R03","F11","A82","R21","H40","O51","L81","A05","Q02","V01","D99","J99","R63","S31","I44","J02","A24","H84","F12","P88","B94","E05","Aoo","H83","Q01","F02"]
 ["W00","I00","S00","L00","O00","E30","T22","V00","P00","R00","G41","H00","I70","P87","X21","K00","E00","G30","P60","T20","D00","X20","P62","K30","G00","K31","A00","W99","R22","E86","W30","Q12","B50","A62","A90","M99","B42","B99","P40","E60","O50","H80","D20","A30","P20","B20","T31","P32","F01","O20","A50","S82","L41","E24","B24","A51","N70","E11","C50","O55","E50","X99","P30","P85","S30","M00","E20","D30","B82","C30","H30","T30","R23","E99","M12","C60","G96","K40","D33","B11","Q30","B90","S32","Q21","A69","E80","B25","D31","L25","L12","E42","A70","P43","Q32","C00","Q39","B43","D34","F32","B21","S20","T50","Z99","J20","R20","M20","N62","O54","B05","B40","H20","O99","A20","T21","P80","R99","E40","O23","Q33","A56","F33","B80","B60","R28","K25","G32","P99","G81","A31","P45","R60","G80","J22","I99","G02","X19","Y03","C36","D50","T00","U00","F30","T99","R26","T70","A99","F80","G98","L20","U50","L99","B70","G48","F00","P33","P51","P50","Q50","J00","E32","Y00","S99","N00","X22","W24","G40","P82","R24","A57","P27","N32","H43","I40","A25","J30","A61","X00","G44","X30","X50","E21","E70","F99","R61","Q20","F22","Q00","H60","F42","G84","Q40","B28","L21","U20","A68","N60","G43","W70","Q71","D61","A60","G99","P84","A23","I43","O31","A80","U30","P86","E22","D40","I80","B30","A52","X83","C41","O42","P31","Q35","E62","G20","F40","P52","N20","H05","O30","H90","X84","K34","A40","L30","P74","B83","O41","F70","N40","V30","B41","O21","P42","F20","IIn","B92","C20","F19","N30","P70","V22","B84","I20","A63","F60","N99","K20","S40","T23","K35","M23","A65","P81","O53","I72","X40","C40","E65","D60","A32","L40","X70","Q70","A27","H50","A26","A33","L80","N31","O22","C34","C32","Sun","Q31","H99","I83","Q23","A6E","I71","Q99","G83","C35","R40","G25","K36","P75","U40","R01","G90","I50","F53","U99","H98","P58","C99","P73","H92","K99","U03","I73","B03","U41","A54","M40","E92","N69","J21","S80","P28","T12","A82","R21","H40","O51","L81","D99","J99","R63","S31","I44","A24","P88","B94","Aoo"]

So the projects that we haven't in the mapping we haven't added categories for them so there is about 400 endaoment projects in our db, @divine-comedian What should we do now?

mohammadranjbarz commented 1 month ago

The missing nteeCodes and their nteeDescriptions ntee_codes.csv

nteeCode,nteeDescription
B12,Fund Raising and/or Fund Distribution
K12,Fund Raising and/or Fund Distribution
S01,Alliance/Advocacy Organizations
W12,Fund Raising and/or Fund Distribution
E01,Alliance/Advocacy Organizations
,
B00,Education
R12,Fund Raising and/or Fund Distribution
C01,Alliance/Advocacy Organizations
A12,Fund Raising and/or Fund Distribution
I01,Alliance/Advocacy Organizations
W11,Single Organization Support
Z00,Unknown
O12,Fund Raising and/or Fund Distribution
G01,Alliance/Advocacy Organizations
P11,Single Organization Support
W05,Research Institutes and/or Public Policy Analysis
S02,Management & Technical Assistance
B01,Alliance/Advocacy Organizations
X12,Fund Raising and/or Fund Distribution
G11,Single Organization Support
T02,Management & Technical Assistance
Q11,Single Organization Support
W02,Management & Technical Assistance
E12,Fund Raising and/or Fund Distribution
H96,"Neurology, Neuroscience"
H48,Brain Disorders
A19,Nonmonetary Support N.E.C.
I05,Research Institutes and/or Public Policy Analysis
H44,Kidney
D01,Alliance/Advocacy Organizations
M01,Alliance/Advocacy Organizations
Y12,Fund Raising and/or Fund Distribution
H12,Fund Raising and/or Fund Distribution
T01,Alliance/Advocacy Organizations
J05,Research Institutes and/or Public Policy Analysis
T03,"Professional Societies, Associations"
Q05,Research Institutes and/or Public Policy Analysis
P46,Human Services -- Multipurpose and Other
j00,Employment
U05,Research Institutes and/or Public Policy Analysis
P01,Alliance/Advocacy Organizations
A11,Single Organization Support
W01,Alliance/Advocacy Organizations
w00,Public & Societal Benefit
A01,Alliance/Advocacy Organizations
B02,Management & Technical Assistance
s00,Community Improvement & Capacity Building
L01,Alliance/Advocacy Organizations
H81,AIDS
D03,"Professional Societies, Associations"
D12,Fund Raising and/or Fund Distribution
P12,Fund Raising and/or Fund Distribution
N01,Alliance/Advocacy Organizations
X80,"Religion, Spiritual Development"
H03,"Professional Societies, Associations"
C12,Fund Raising and/or Fund Distribution
K01,Alliance/Advocacy Organizations
P19,Nonmonetary Support N.E.C.
S03,"Professional Societies, Associations"
S12,Fund Raising and/or Fund Distribution
C05,Research Institutes and/or Public Policy Analysis
Y02,Management & Technical Assistance
V05,Research Institutes and/or Public Policy Analysis
U12,Fund Raising and/or Fund Distribution
N12,Fund Raising and/or Fund Distribution
X01,Alliance/Advocacy Organizations
O11,Single Organization Support
R02,Management & Technical Assistance
G12,Fund Raising and/or Fund Distribution
E02,Management & Technical Assistance
G05,Research Institutes and/or Public Policy Analysis
O01,Alliance/Advocacy Organizations
R03,"Professional Societies, Associations"
F11,Single Organization Support
A05,Research Institutes and/or Public Policy Analysis
Q02,Management & Technical Assistance
V01,Alliance/Advocacy Organizations
J02,Management & Technical Assistance
H84,Autism
F12,Fund Raising and/or Fund Distribution
E05,Research Institutes and/or Public Policy Analysis
H83,Alzheimer's
Q01,Alliance/Advocacy Organizations
F02,Management & Technical Assistance
divine-comedian commented 1 month ago

Thanks mohammad, I finished mapping the missing nteeCodes to Giveth categories and here is the CSV:

Endaoment -_ Giveth Categories - Sheet4.csv

mohammadranjbarz commented 1 month ago

@divine-comedian @LatifatAbdullahi It got fixed

Screenshot 1403-05-21 at 5 55 58 in the afternoon
LatifatAbdullahi commented 1 month ago

@divine-comedian

Thanks @mohammadranjbarz we now have 3613 projects

image

However @mohammadranjbarz , it seems we have 3614 projects on the csv, is there a reason why a project is missing?

image

divine-comedian commented 1 month ago

@LatifatAbdullahi you forgot to consider that the spreadsheet header takes up the 1st row. so there is in fact only 3613 projects

LatifatAbdullahi commented 1 month ago

@divine-comedian @divine-comedian

Oh yes, thats right...thanks