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

[WIP][New Provider] Support GitHub Page (Jekyll) #242

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

rebornix
Copy link

As described in #55 , there are millions of sites using GitHub Page as their blog engine, we may want to add GitHub Page to the default supported blog list. This feature is still in progress, I just send out this pr for community review. It already supports CRUD of pages but as OLW is lack of Markdown support for now, so you can't really publish one working markdown post to GitHub Page, but I suppose we don't need to wait for too long.

TODO:

  • Basic Authentication.
  • OAuth 2.0
  • Markdown Support ( this task is actually external )
  • CRUD for posts ( _post\year-month-day-title.md)
  • CRUD for drafts (_drafts\title.md)
  • Metadata basic support ( Categories, Tags, Date, Excerpt )
  • Metadata UI part ( In Jekyll we store metadata at the beginning of markdown file, aka Yaml Front Matter, we need to map it to UI control like how we deal with Categories )
  • Consistent error handling
  • Code clean up.
  • Unit Test

Last but not least, allow me say thank you to @robertiagar @pekiZG @JohnBlood @lankaapura and @SummerSun, we can't have this pr without your input 😄 . As we still have a lot of detailed work to do, I'm really looking forward to your help on this feature, if you are happy to contribute, you can start with issues marked as easyfix in my fork.

@rebornix
Copy link
Author

Map Jekyll metadata to existing UI controls, eg Categories, Tags, Excerpt...

image

@rebornix
Copy link
Author

Finish front matter part, which is already metadata standard in Static Site Generators.

image

@robertiagar
Copy link

This looks great!

@crlf0710
Copy link

Hi, how the progress on this? i noticed that the ci build is failed but there's no obvious error. any chance to rerun the build?

@rebornix
Copy link
Author

@crlf0710 this pr passed all checks when I sent it out but as I'm waiting for @dend 's markdown integration, I didn't do any rebase or sync with upstream, so the checks failure is expected.

Once we have markdown in mainstream, I'll update this PR ASAP then we can have a happy pass of GitHub Page integration.

@dend
Copy link

dend commented Jan 21, 2016

Rushing to finish my MD work - have a publishing bug that I need to fix related to sending the data to the engine. Once that is done, should be good to go.

@rebornix
Copy link
Author

Thanks @dend , really looking forward to your work! No hurries 👍

@japj
Copy link

japj commented Feb 19, 2016

Hi, what is the current state of this? Anything that I can help with?

@rebornix
Copy link
Author

@japj I'm waiting for @dend 's markdown integration actually. Once it's done, we can continue this pr 😄

@dend
Copy link

dend commented Feb 20, 2016

@rebornix ok, sorry for the delay 👍 I finally figured out what the problem is with the bug in the MD publishing, checking it in this week 😄

@japj
Copy link

japj commented Mar 2, 2016

@dend anything we can do to help this move forward?

@jongio
Copy link

jongio commented Apr 26, 2016

@dend Thanks a lot for getting this started. We'd like to get this wrapped @up so we can enable static-sites. Do you have an ETA or can you push what you have to date to a branch so we can take this forward?

Thanks,
Jon

@RobDolinMS RobDolinMS added the new-provider Requests for new blogging providers label Aug 30, 2016
@RobDolinMS
Copy link
Contributor

THANK YOU @rebornix, @dend, and others for working on this. EXCITING!

@japj
Copy link

japj commented Dec 15, 2017

What is the current progress of Jekyll support? How can I help to move this forward again?

@nvella
Copy link
Member

nvella commented Jun 16, 2019

Hi all again,

I would very much like to get the ball rolling on this again, and have a few ideas I'd like to table.

  • To ease on implementation complexity, I think it might be worthwhile to consider separating out the GitHub Pages from general Markdown/Git publishing. Maybe a generic 'Static Site Generator' client can be implemented first, which publishes to Markdown files to a local folder structure, and then runs a set of user-defined commands to generate sites, push that out to a Git repo, so on and so forth.
    • Have it possible to generate sites on HTML formatting, as well as Markdown.
    • A static HTML site would function in much the same way OLW currently does, as all rich-text editing features are available.
    • Setting up a static Markdown site would reduce the editor to two tabs, Source and Preview.
      • Maybe the Preview tab can be rigged up to run the generator and show a page preview.
      • WYSIWYG on Markdown might be also be something worth considering eventually. The Edit tab will convert the Markdown source to Rich Text when it is entered, and back when the tab is left. If there are disparities in the conversion, display the user a prompt that their changes may be lost.
  • Later on, a full GitHub Pages integration can be developed, which automatically sets up the Static Site Generator with a Git client, authenticated through OAuth.

Thoughts? @rebornix @dend

@nvella
Copy link
Member

nvella commented Aug 7, 2019

Hi all. I've implemented generic static site gen support in PR #844. If anyone wishes to pick up GitHub Pages integration again, it may be worthwhile to consider building on top of/altering the generic support.

@JoniWebb

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new-provider Requests for new blogging providers
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet