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

Roadmap #146

Open
1 of 3 tasks
rstacruz opened this issue Aug 29, 2016 · 8 comments
Open
1 of 3 tasks

Roadmap #146

rstacruz opened this issue Aug 29, 2016 · 8 comments
Labels

Comments

@rstacruz
Copy link
Contributor

rstacruz commented Aug 29, 2016

Roadmap

Here's a tentative roadmap.

  • v0.7 — Just cleanups.
  • v0.8 — Theming; finalize plugin system.
  • v0.9 — Extract things into plugins (docpress-disqus, docpress-google-analytics).

Road to v1

And criteria for a v1 release:

  • Theming should be easy. Designers shouldn't have to be hassled just to make something nice; just fork docpress-theme-light (or whatever) and edit along.
  • There should be at least 2 "official" themes. docpress-rsc will be made into an actual theme (ie, a docpress plugin), and it should be a good starting point for people wanting to make themes. Other candidates would be a one page theme and a monospace theme.
  • Mobile should be fully taken care of. There should be a mobile sidebar toggle.
  • The default theme should be spruced up a bit and made nicer... something we'd be happy to stick around for a long time.
@knownasilya
Copy link
Member

Might be nice to have a docpress init command that sets up a docpress.json with some nice defaults, docs folder, and gh-pages deploy setup? Maybe post 1.0 though.

Also docpress -h doesn't work, it should.

@rstacruz
Copy link
Contributor Author

Oh, thats not a bad idea. It's actually pretty easy. If you guys wanna take a stab at it, go ahead.

npm install --save-dev docpress
mkdir -p docs
cat << EOF
# Table of Contents

* [Project name here](../README.md)
EOF > docs/README.md
echo '{ "github": "github/url" }' > docs/docpress.json
# add { scripts: { docs: "docpress build" } } to package.json
# add { scripts: { "docs:watch": "docpress" } } to package.json

gh-pages integration is harder though (it has some manual steps), so I'd hold off on that.

@rstacruz
Copy link
Contributor Author

...you can even build that as a docpress-init module, which docpress will just delegate to later.

@rstacruz
Copy link
Contributor Author

rstacruz commented Aug 29, 2016

Theming roadmap (v0.8)

  1. docpress-base will be renamed to docpress-html. (Rename docpress-base → docpress-html #143) This is a Metalsmith plugin responsible for building basic the HTML structure.

  2. docpress-html will be made to only generate HTML... no CSS or JavaScript. This will greatly simplify docpress-html, which is very overloaded right now.

  3. The CSS/JS parts will be extracted to docpress-theme-base. This allows us to manage the complexity build tools (stylus, postcss, browserify) in just one module.

    Docpress will now use a pipeline of:

    • docpress-core (parses .md files) →
    • docpress-html (generates .html) →
    • docpress-theme-base (adds .css and .js).

Future themes will replace docpress-theme-base in that pipeline. There will be tools in docpress-theme-base to allow you to build themes on top of it easily (ie, reuse the same stylus/browserify pipeline to build your own themes).

@knownasilya
Copy link
Member

I'd love if we could switch stylus --> postcss and pug --> to something html like (handlebars?). Makes contributing so much simpler, and understanding the code for building themes.

@rstacruz
Copy link
Contributor Author

stylus to postcss-cssnext + postcss-easy-import? yes, that's certainly possible. the lack of var ?= value would be a shame (it's a way to make variables easily overridable), but I think we'll survive.

pug to something else? that'd be hard. the menu generation relies on pug's recursive mixins, something not easily doable in handlebars. mustache, maybe.

@knownasilya
Copy link
Member

knownasilya commented Aug 29, 2016

Maybe swig, not really set on a specific preprocessor, but it should be something that keeps the html in it's normal state.

@Kikobeats Kikobeats added the epic label Aug 30, 2016
@knownasilya
Copy link
Member

knownasilya commented Nov 1, 2016

We should probably also lock into Node 6.9-lts for v1.0

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

No branches or pull requests

3 participants