Comments (41)
Created FAQ card component that displays question and shows answer when clicked. Next steps include refining styling & dropdown animation on FAQ card component and adding content management system that updates from a Google sheets file/ displays content on necessary number of FAQ cards.
from cti-website-frontend.
Styled page to look and feel like Figma wireframe and completed initial set up of React, Node, and Google Sheets content management system (CMS). Next steps are to add icon to search bar and finish setting up CMS.
from cti-website-frontend.
from cti-website-frontend.
Looked into a couple of different content management system options. Believe some common technologies we can implement are Mongo, Postgres, and the Google Sheets option described in Tim's article included in "Resources/Instructions" above. I would be most interested in trying out the React/Google Sheets/Node option to try something new that also seems straight forward. Would be interested in discussing this path forward on Sunday!
from cti-website-frontend.
@ashleyerffmeyer sounds like a great idea, I will probably have to skip the meeting Sunday but hoping @ExperimentsInHonesty will be able to review this path with you tomorrow.
from cti-website-frontend.
@ashleyerffmeyer as per today's discussion, we would prefer the Google Sheets option, thanks!
from cti-website-frontend.
Next steps include create card component and wire up back end.
from cti-website-frontend.
No new screen shots this update. Working on step 3 of 7 to hook up content management system. Currently running into an issue ensuring the proper port is called for local host, but working through it.
from cti-website-frontend.
@josh Bubar can you show @ashley Erffmeyer how you did the wiring up of the google sheet to the wins-page
from cti-website-frontend.
Since the backend of CTI is Django, I would suggest you add a Django CMS to the app. Personally I would suggest Wagtail because that is what I use at work but if you think that is too much, there are other options. https://djangopackages.org/grids/g/cms/
from cti-website-frontend.
I'm unable to make tonight's meeting due to work. Here's my update: Talked with Josh regarding the use of Google's api key per Bonnie's suggestion last meeting to hook up React to Google Sheets. Will move forward with that approach. This week has been busier than anticipated but I will be able to pick this ticket up again this weekend. If there is discussion this evening about django/wagtail and the group decides to use django instead, please let me know. Thanks!
from cti-website-frontend.
If the team is interested in exploring a Django based CMS, let me know. I can't make it to this evening's meeting but could come to the weekend meeting if the team wants more information about Django options.
from cti-website-frontend.
@cnk I think that would be a great discussion to have, if you're available for the weekend meeting, @ashleyerffmeyer of course would love to have you as well.
from cti-website-frontend.
Thanks for the update! I've been working this weekend and am now under the weather and/or suffering from allergies. I won't be able to make the call today. However, feel free to let me know how the discussion goes regarding django/ wagtail. If it's something we want to definitely do, I can catch up with @cnk early this week to learn more as I am no longer on call after Monday morning. I don't have experience in django but am definitely willing to learn!
from cti-website-frontend.
@ashleyerffmeyer Hope you are feeling better soon.
I have a rough draft of an FAQ management interface using django admin at https://github.com/cnk/CTI-website-backend/tree/FAQ. It currenly has one, read only API endpoint that lists all FAQs marked 'live'. Next step is to add an endpoint that will increment a counter - which can be used when people click to view the answer.
from cti-website-frontend.
Thanks @cnk almost back to 100%. The work you did looks great so far. Are you free tomorrow evening around 5:30 PT/ 7:30 CT to discuss what you've done and how to hook it up to the front end? Feel free to propose a more convenient time if needed. This is what I have so far: https://github.com/ashleyerffmeyer/CTI-website-frontend/tree/faq-page-issue-63.
from cti-website-frontend.
@ashleyerffmeyer This is the structure of the JSON I am currently producing. If that is not what you want to consume, please let me know and I will change it.
[
{
"id": 1,
"question": "What should I ask?",
"answer": "Anything you like",
"view_count": 7
},
{
"id": 3,
"question": "How now brown cow?",
"answer": "See you later alligator!",
"view_count": 0
},
{
"id": 2,
"question": "Why is this site so gray?",
"answer": "Because we like gray.",
"view_count": 0
}
]
Next step: get this deployed to heroku
from cti-website-frontend.
@cnk PR merged. Kudos 👏
I have applied migrations to include the FAQs model. Also, I have added the above dummy data.
@ashleyerffmeyer You can view the endpoint here.
Executing the GET /api/faqs/ you should be able to see the exact same response as Cynthia shared in the above comment
from cti-website-frontend.
No new image to show quite yet. Working on hooking up backend data to front end; I'm about half way done with this. ETA is Thursday, 9/24.
from cti-website-frontend.
Note @ashleyerffmeyer let me know today she will be out for three weeks or so due to a family emergency.
Her code is hosted here: https://github.com/ashleyerffmeyer/CTI-website-frontend/tree/faq-page-issue-63
from cti-website-frontend.
Note Contributors screen is using a component that would be useful here (opening and closing expanding panels)
from cti-website-frontend.
@cnk I was reading back on this issue and it looks like there is a django cms #63 (comment). Before I ask design to come up with a screen design, can you show us what is possible? I see that we have the following apis
What do we need to be able to have screens / forms for people to submit questions and for us to either use them or rewrite them and pair them with answers so that they appear in the faq on the site.
from cti-website-frontend.
@chalimar please add screen shots that Cnk showed us, to this issue.
from cti-website-frontend.
from cti-website-frontend.
@nrrao - Progress update is that api is working and styling needs to be incorporated.
from cti-website-frontend.
Blockers
none
Availability
Medium
Working on Next
Should be able to finish by Thursday
from cti-website-frontend.
@cnk @shinjonathan We need to decide if
- the data for the FAQs is going to get pulled all at once (would need a new api to pull them all) after the api call for the most frequently is pulled. then when search happens is happening locally
or - We get an api that instead takes in search and processes it in the back end and delivers results based on search.
Which is preferable and why?
Bonnie
from cti-website-frontend.
- At first pass through (since I wouldn't imagine there to be too many questions) we can just have the api return all of the results.
2.) The API can expose a query parameter for the search string and spit back a more specific result.
/faq?q=Search => [searchResult, searchResult]
from cti-website-frontend.
FAQ Design for mobile now in Figma file.
from cti-website-frontend.
@cnk @shinjonathan We need to decide if
- the data for the FAQs is going to get pulled all at once (would need a new api to pull them all) after the api call for the most frequently is pulled. then when search happens is happening locally
or- We get an api that instead takes in search and processes it in the back end and delivers results based on search.
We have an API endpoint that pulls all FAQs. This PR adds a search endpoint that uses Postgres's full text search capability via a feature built into Django Rest Framework
from cti-website-frontend.
@shinjonathan added you onto the Added full text search to FAQ api civictechindex/CTI-website-backend#27 PR
from cti-website-frontend.
progress: I finished refactoring. Will start working on the search component once API faq PR is approved.
blocks: none
Availability: Medium
ETA: next weeks meeting
from cti-website-frontend.
Need to work on implementing the counter for faq.
Will display 5 questions of faq
Also, implement pagination for search.
from cti-website-frontend.
PR is approved for full-text search.
progress: Need to implement counter for faq
blocks: none
Availability: Medium
ETA: one week
from cti-website-frontend.
progress: started working on Counter for FAQ
blocks: none
Availability: Medium
ETA: one week
from cti-website-frontend.
@nrrao Can you please share the URL for the faq page?
from cti-website-frontend.
@cnk will provide a search endpoint for @nrrao
from cti-website-frontend.
@nrrao searching FAQs now works: https://test-civictechindexadmin.herokuapp.com/api/faqs/?search=brown
from cti-website-frontend.
Thanks @cnk
I was able to implement the search endpoint.
Need clarification regarding displaying search results.
from cti-website-frontend.
Product will talk to UI to mock up returned search results screen, #213
from cti-website-frontend.
Pls do a competitive analysis for UX recommendations on returned results and make wire frame.
from cti-website-frontend.
Related Issues (20)
- 'Civic Tech Organizations' Page Audit - Web
- 'Collaborate with us' Page Audit - Web
- 'Donate' Page Audit - Web
- 'Share the CTI' Page Audit - Web
- Civic Tech Organization Search - Open to lowest level when only 1 Organization shows HOT 1
- Github Rate Limitations
- Fix "removed in Django41Warning" HOT 3
- Most Recently Updated on Organizations Page
- Store state changes for searches HOT 2
- Org list box size responsiveness HOT 2
- "has github" checkbox on Organizations page HOT 1
- Re-parent orgs to siblings of Code for All
- Update link for CTI assets HOT 1
- Add Link type for commonly used social media
- Fix or replace use-query-params for org search HOT 1
- Back button incorrectly redirecting HOT 2
- Civic Tech Organizations Page currently includes "%20" in query when back button is used HOT 1
- Update NavBar lower padding HOT 1
- Org Icons on site, but not on local
- Update FAQ: How do I add my organization to Civic Tech Index?
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.
from cti-website-frontend.