Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MLH Fellowship 2020 Ideas List #2267

Closed
yangshun opened this issue Feb 5, 2020 · 19 comments
Closed

MLH Fellowship 2020 Ideas List #2267

yangshun opened this issue Feb 5, 2020 · 19 comments
Labels
mlh Major League Hacking Fellowship

Comments

@yangshun
Copy link
Contributor

yangshun commented Feb 5, 2020

Note that all the projects listed here are targeting Docusaurus 2.

New Themes and Theme Gallery

Difficulty: Medium

Description: Docusaurus 2 introduces the concepts of themes and we have created an entirely new CSS framework from scratch based on Docusaurus 1's theme. Some users will want to use their own CSS, for e.g. Bootstrap. Hence we want to add support for themes based on the popular CSS frameworks out there (e.g. Bootstrap, Bulma). It'd also be nice to have a gallery where we can showcase the themes.

edit: #3522


Docusaurus Debug Dashboard

Difficulty: Medium

Description: A dashboard page that could be accessed during development to show the available routes for a Docusaurus site and also the list of swizzled components. This helps users to easily identify problems in a Docusaurus set up and enhances the user/developer experience. For example, a user can access http://localhost:3000/__docusaurus/debug to see helpful debug information.

This is similar to http://localhost:3000/rails/info/routes in Rails, see the docs.

Bonus points if we can swizzle components from the UI!

Edit: done


Docusaurus 1 to 2 Migration Command

Create a CLI command that can be run on Docusaurus 1 projects to easily move them to Docusaurus 2! There will still be some manual tweaking involved but at least it can help to get the trivial stuff out of the way.

This tool will essentially be a programmatic version of our migration guide.

Edit: done but can be improved here: #3520


Docusaurus Doctor

Difficulty: Hard

Description: A command that can be used to check for common issues or recommend best practices within a Docusaurus website, for e.g. finding broken page paths, finding broken image paths, flagging unused assets, etc. Alternatively, these checks can be in the form of new ESLint rules/static analysis.

edit: not sure it's needed anymore?


Offline Search

Difficulty: Hard

Description: Docusaurus uses Algolia as the default search service but internal docs cannot leverage on Algolia, which requires that a website be public. It could be possible to use lunr.js to build an index of the content and add search as a built-in feature to a Docusaurus website. This project is inspired by our Canny Feedback board.

edit: pending PR: #3153


Integrate Build Size Bot

Difficulty: Easy

Integrate build size bot (or alternatives) to run on PRs to detect size regressions whenever changes are made to the repository. Example of Next.js PR

edit: #3521


Keyboard Shortcuts

Edit slorber => #3020

@yangshun yangshun added the gsoc label Feb 5, 2020
@yangshun yangshun removed the gsoc label Feb 23, 2020
@yangshun
Copy link
Contributor Author

Docusaurus wasn't selected for Google Summer of Code 2020. I guess we can keep this open as the ideas are still useful

@yangshun yangshun changed the title Google Summer of Code 2020 Ideas List MLH Fellowship 2020 Ideas List May 28, 2020
@yangshun
Copy link
Contributor Author

Repurposing this list to be MLH Fellowship instead of GSoC.

@yangshun yangshun pinned this issue Jun 4, 2020
@yangshun yangshun added the mlh Major League Hacking Fellowship label Jun 5, 2020
@slorber
Copy link
Collaborator

slorber commented Jun 5, 2020

Dynamic Social Cards

Edit: moved to #2968

@teikjun
Copy link
Contributor

teikjun commented Jun 12, 2020

Hi @yangshun, @anshulrgoyal and I are thinking of working on Docusaurus 1 to 2 Migration Command. May I ask for a quick estimate for the difficulty level and priority level of this issue?
(Edit: We got a reply from Joel already, thanks!)

@slorber
Copy link
Collaborator

slorber commented Jun 19, 2020

Hi,

I've created a dedicated issue for dynamic social cards here: #2968

@Drewbi wants to work on this already

@anshulrgoyal
Copy link
Contributor

anshulrgoyal commented Jun 25, 2020

Hi,
For the migration tool should we create a separate tool like docusaurus-migrate or we add it to the existing package?. I think the new tool will be better.

@yangshun
Copy link
Contributor Author

yangshun commented Jun 25, 2020

I'd say a new package within this repo under the @docusaurus/ scope. We don't want code to be all over the place otherwise it becomes hard to keep track and also enable publishing permissions. We'll also be the maintainers of it moving forward.

@slorber
Copy link
Collaborator

slorber commented Jun 25, 2020

I think the question was more if we integrate the migration as part of the existing cli, or if we create a dedicated cli for the migration. (in all case it stays on this repo).

I think it would be better to create a new package like "@docusaurus/migrate", because it's likely to be run one time with npx, and after the user don't need it anymore, so including this to core cli system is not very useful. It's a bit similar to "@docusaurus/init"

@yangshun
Copy link
Contributor Author

Oh yes I fully agree. @docusaurus/migrate sounds good (hopefully we don't need it for a 2 to 3 migration hehe

@anshulrgoyal
Copy link
Contributor

I want to work on the search feature.

@JoelMarcey
Copy link
Contributor

@yangshun, @slorber -- which of these are actually completed? Thanks!

@slorber
Copy link
Collaborator

slorber commented Sep 28, 2020

@JoelMarcey

Done:

  • Docusaurus Debug Dashboard => done
  • Docusaurus 1 to 2 Migration Command => done (but could still be improved)
  • Docusaurus Doctor => somehow related to the debug dashboard, and I'm not even sure this is needed anymore because we worked on making v2 much more failsafe and added broken links checking etc

Pending:

  • Offline Search => pending PR, will review it carefully after i18n
  • Dynamic Social Cards => pending PR but need more work

Not started:

  • New Themes and Theme Gallery (the bootstrap theme is quite basic, and could be enhanced)
  • Build Size Bot
  • Keyboard shortcuts

@slorber
Copy link
Collaborator

slorber commented Oct 2, 2020

Meta issue for the MLH 2nd batch tasks: #3527

Let's close this one for now

@slorber slorber closed this as completed Oct 2, 2020
@yangshun yangshun unpinned this issue Oct 19, 2020
@sarthakkundra
Copy link
Contributor

@yangshun Any plans of applying Docusaurus to GSoC 2021?

@yangshun
Copy link
Contributor Author

yangshun commented Nov 25, 2020 via email

@sarthakkundra
Copy link
Contributor

sarthakkundra commented Nov 25, 2020

D2 has definitely matured a lot since the last application so I'm thinking it'll be worth a shot.

@sarthakkundra
Copy link
Contributor

@yangshun if you're trying for GSoC 2021 I believe you will be brainstorming about possible projects. Contributing here for some time now and I think I might have some ideas. Should I create issues for them or mail someone?

@yangshun
Copy link
Contributor Author

yangshun commented Jan 6, 2021

For maximum visibility sake, creating new issues would be good so that even if we don't apply for GSoC or don't get selected for it, others can still pick them up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mlh Major League Hacking Fellowship
Projects
None yet
Development

No branches or pull requests

7 participants