Open alexluong opened 5 years ago
Folder structure: I think the folder structure is good when it comes to courses. I would however, suggest that reviews are kept outside as a separate folder. We can give each course a unique slug and that can be used to cross reference.
JSON or YAML: Completely agree with these points. For reviews JSON would be good. These reviews could be the first PR of a lot of students, so anything easy to use should work.
Breaking into multiple issues: I see we can break this into three issues and pick them up separately from here.
Read data from JSON file and update graphQL
Component i.e. the view element of reviews. Query from GraphQL and map with a slider.
Course page data and design
What do you suggest? @alexluong
If you agree to this let's create three separate issues from this. I would need your help in mapping out the fields and overseeing work on all three. As for getting course pages data ready. I can create pages with some data for now.
@tanaypratap
I can see the merits in keeping things separate. How would you feel about this folder structure instead?
- data
- courses
- course-1.md --> course data (description, url, etc)
- course-2.md
- reviews
- course-1
- name-1.json --> review data (rating, description, name, avatar, etc)
- name-2.json
- course-2
- name-3.json
- name-4.json
Just to reiterate, our course data would be in markdown
, and review data would be in JSON
.
I think these are the issues we can create to create course pages
and show reviews
:
markdown
file to GraphQLIssue 1 and Issue 2 can be created separately. Issue 3 will depend on both 1 & 2 to be done.
JSON
file to GraphQLSimilar to courses' issues, 4 and 5 can be created separately, and 6 depends on both. On top of that, issue 5 may or may not depend on issue 2.
Let me know what you think about this? If it works for you, I can go ahead and create these issues. I can also work on all of them, but I'd love to let others have a chance to tackle these if anybody's interested.
I'd love to hear your thoughts on Course
and Review
data structure. If you can just post the GraphQL SDL for them, that would be a good starting point!
And lastly, I think having some sort of design/guidelines would be quite helpful. Do you have some sort of design or can bring somebody on board for that. Just a thought.
@alexluong
Looks good. I would say send a PR with "Under Construction" Pages. We'll get it merged. This will provide empty pages for anyone working on anything.
All are good issues, let's create them and we'll pick them one by one. if no one picks those we'll close it. I have been advised by doctor to stay away from screen for sometime. That's the reason behind asking for help online. But we have a lot of people on the FB group. If we can break things into smaller chunks and oversee the work we can involve more people.
If things are dependent on other issues, we can create a project and board. What do you think about that?
Kindly create an issue for Course and Review data structure. I'll work on both of them and get it done.
Design Guidelines If you see the theme/starter in the readme, you'll find this page. We can use these components for creating items. It has almost everything required. They're not in components as I feel this starter is mostly a designer work but we can definitely get the code in better order.
Hi,
Following @tanaypratap's FB post, I'd like to open a discussion on how we can implement course pages and course reviews sourced from markdown files. Here are a few questions I have:
We can develop these 2 features separately and concurrently. However, don't we need to finish course pages first before we can show the reviews of each course?
Besides, I'm still not sure where we're getting course data.
This is one way I imagine we can go about implementing these:
data/courses
directory with this structure:course-name/index.md
that looks like this:data/courses
directory with this structure:course-name/username.md
that looks like this:This is just a rough draft. A few things we can discuss further:
Would love to hear your thoughts on this.