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

Status of 1.0.0 #46

Closed
51 of 56 tasks
squidfunk opened this issue Sep 11, 2016 · 70 comments
Closed
51 of 56 tasks

Status of 1.0.0 #46

squidfunk opened this issue Sep 11, 2016 · 70 comments
Assignees
Milestone

Comments

@squidfunk
Copy link
Owner

squidfunk commented Sep 11, 2016

This issue is meant for updates and discussions on the progress of the rework of the theme. Please feel free to checkout and try the rework branch and comment on the current state of development.

1.0.0-beta

  • Implement search modal
  • Refactor JavaScript
  • Integrate Google Analytics from 0.2.x
  • Integrate palettes from 0.2.x
  • Refactor table styles from 0.2.x
  • Create specimen page and check for missing styles
  • Add preventDefault on overlay for iOS when menu is open
  • Refactor search result code in SCSS

1.0.0-rc

  • Put path into header (breadcrumbs)
  • Constrain image width to content area (like in 0.2.4)
  • Account for height change after parsing MathJax
  • Fix bug with non-stretching container when there is no content
  • Refactor footer to be variable-size for arbitrary footer content
  • Refactor link in footer (together with social icons)
  • Include social icons in footer (see Adding social link: linkedin #49)
  • Check all issues in original Material theme and ensure they are fixed in rework
  • Full integration with pymdown extensions
  • Write documentation on pymdown extensions
  • Fix anchor offsets for blurring
  • Add -webkit-overflow-scrolling via JavaScript on navigation
  • Add "Edit on GitHub" Link (dependent on mkdocs 0.16 release)
  • Make logo/icon configurable (webfont, svg)

1.0.0

  • Rewrite getting started guide
  • Write documentation on theme extension and customization
  • Write documentation on how to integrate theme from GitHub
  • Write CONTRIBUTING.md

1.0.x

  • Switch to PR-based development workflow after big merge
  • Write unit tests with karma for components
  • Refactor search algorithm
  • Add a separate homepage/langing page layout
  • Refactor 404 template
  • Fix missing repaint on header/nav for tablet breakpoint

DONE

  • Introduced Webpack for more sophisticated JavaScript bundling
  • Introduced ESLint and SassLint for code style checks
  • Introduced more accurate Material Design colors and shadows
  • Introduced modular scales for harmonic font sizing
  • Introduced git-hooks for better development workflow
  • Rewrite of CSS using the BEM methodology and SassDoc guidelines
  • Rewrite of JavaScript using ES6 and Babel as a transpiler
  • Rewrite of Admonition, Permalinks and Codehilite integration
  • Rewrite of the complete typographical system
  • Rewrite of Gulp asset pipeline in ES6 and separation of tasks
  • Removed Bower as a dependency in favor of npm
  • Removed custom icon build in favor of the Material Design iconset
  • Removed _blank targets on links due to vulnerability: http://bit.ly/1Mk2Rtw
  • Removed unversioned assets from build directory
  • Restructured templates into base templates and partials
  • Added build and watch scripts in package.json
  • Added support for Metadata and Footnotes Markdown extensions
  • Added support for pymdownx.* Markdown extensions
  • Added support for collapsible sections in navigation
  • Added support for separate table of contents
  • Added support for better accessibility through REM-based layout
  • Added icons for GitHub, GitLab and BitBucket integrations
  • Added a 404.html error page for deployment on GitHub Pages
  • Fixed live reload chain in watch mode when saving a template

Testing

The easiest way to test the rework branch is by downloading or cloning it into your project's root and using the theme_dir key in your mkdocs.yml to refer to the theme:

  1. cd your_project
  2. git clone https://github.com/squidfunk/mkdocs-material
  3. git checkout rework
  4. cd ..

In your mkdocs.yml add:

theme_dir: mkdocs-material/material
@squidfunk squidfunk self-assigned this Sep 11, 2016
@squidfunk squidfunk added this to the 1.0.0 milestone Sep 11, 2016
@squidfunk
Copy link
Owner Author

bildschirmfoto 2016-09-11 um 23 23 02

This was referenced Sep 26, 2016
@viktorbenei
Copy link

Looks beautiful and quite functional (from a UX point of view)! 👍

@viktorbenei
Copy link

Just a question, how will this look like on mobile? Will there be two side menus?

@squidfunk
Copy link
Owner Author

squidfunk commented Oct 10, 2016

No, on mobile the table of contents is embedded in the navigation in a multi-layered (more mobile friendly than now) menu. I've got it ready, only have to implement the search modal and do some cleaning up.

This is the current WIP:

bildschirmfoto 2016-10-11 um 09 59 30

@viktorbenei
Copy link

Looks awesome!

The current mobile view was "good enough" as well - the main pain point was to jump to sub sections - this design seems to solve that ;)

@squidfunk
Copy link
Owner Author

The current mobile view was "good enough" as well - the main pain point was to jump to sub sections - this design seems to solve that ;)

Because the menu was too long or what do you mean? The pages of a subsection are now included in a new pane which slides in when pushing one of the buttons with the chevron, e.g. "Extensions" brings up "Codehilite", "Permalinks", etc.

@viktorbenei
Copy link

Mostly because if you selected a main section, and then you wanted to select a subsection of it, you had to scroll through lots of items in the menu again, to be able to select the sub section

2016-10-11 08 51 23

Example from our DevCenter: https://bitrise-io.github.io/devcenter/caching/about-caching/#downloading-and-deleting-caches - try to select this sub section from https://bitrise-io.github.io/devcenter/ , right now you have to scroll through the menu two times, as every main an secondary section is listed, but 3rd level sections are only shown when you click the related secondary section.

If I understand it correctly, with the new design only main sections will be listed, which should make the menu significantly shorter. In our case this will mean less scrolling ;)

@squidfunk
Copy link
Owner Author

The new design puts the current subsection path as separate panes (one for each node in the tree) over each other, so when you are on the third level, there are three panes over another. Additionally, the subsection of the current entry is open on page load and highlighted in the accent color showing a table of contents icon. When you click on the entry, the table of contents opens in another pane. That's the basic idea and I think it works very well for short and long docs on mobile.

bildschirmfoto 2016-10-11 um 11 00 54

bildschirmfoto 2016-10-11 um 11 01 02

@viktorbenei
Copy link

I agree, this seems to be a great improvement for our site too ;)

@ahmadawais
Copy link

@squidfunk I tried installing the rework theme but it gave errors. How can I try it?

@squidfunk
Copy link
Owner Author

Can you elaborate on what errors exactly? And please, the next time you post an issue stick to the issue template.

@ahmadawais
Copy link

@squidfunk I didn't follow the template since the info it asked for had no say in a general feature request (it was not a bug complaint). But sure I will next time.

So, I cloned the repo and checked out to rework branch. Then I used theme_dir variable in the mkdocs.yml to point to the new theme's folder i.e. material_rework/material

Then I rand mkdcos serve which leads to the following output

INFO    -  Building documentation...
INFO    -  Cleaning site directory
Traceback (most recent call last):
  File "/usr/local/bin/mkdocs", line 11, in <module>
    sys.exit(cli())
  File "/Library/Python/2.7/site-packages/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/Library/Python/2.7/site-packages/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Library/Python/2.7/site-packages/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Library/Python/2.7/site-packages/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/mkdocs/__main__.py", line 115, in serve_command
    livereload=livereload,
  File "/Library/Python/2.7/site-packages/mkdocs/commands/serve.py", line 78, in serve
    config = builder()
  File "/Library/Python/2.7/site-packages/mkdocs/commands/serve.py", line 74, in builder
    build(config, live_server=True, clean_site_dir=True)
  File "/Library/Python/2.7/site-packages/mkdocs/commands/build.py", line 289, in build
    build_pages(config)
  File "/Library/Python/2.7/site-packages/mkdocs/commands/build.py", line 233, in build_pages
    build_template('404.html', env, config, site_navigation)
  File "/Library/Python/2.7/site-packages/mkdocs/commands/build.py", line 148, in build_template
    output_content = template.render(context)
  File "/Library/Python/2.7/site-packages/jinja2/environment.py", line 989, in render
    return self.environment.handle_exception(exc_info, True)
  File "/Library/Python/2.7/site-packages/jinja2/environment.py", line 754, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/USER/Documents/Websites/clone/docs/material_rework/material/404.html", line 1, in top-level template code
    {% extends "base.html" %}
  File "/Users/USER/Documents/Websites/clone/docs/material_rework/material/base.html", line 36, in top-level template code
    {% include "partials/header.html" %}
  File "/Users/USER/Documents/Websites/clone/docs/material_rework/material/partials/header.html", line 27, in top-level template code
    {% include "partials/source.html" %}
  File "/Users/USER/Documents/Websites/clone/docs/material_rework/material/partials/source.html", line 1, in top-level template code
    {% if "github." in repo_url %}
TypeError: argument of type 'NoneType' is not iterable

@amadfida
Copy link

any update on this ? we have a downstream project we depend on that could use this update.

@squidfunk
Copy link
Owner Author

Collapsible sections are implemented in 1.0.0, but will not be a part of 0.2.4 due to my constrained time. I'm working hard in my spare time to finish 1.0.0, but it may still take some time, I'm very sorry.

@urosjarc
Copy link

@amadfida If your project is dependent of this update why don't you contribute to this project to push version 1.0.0 to completion. Also @squidfunk I would suggest for 1.0.0 to make kanban like todos in project section It will make contribution much easier... my example. I can help you with karma tests.

@squidfunk
Copy link
Owner Author

Thank you for the offer, but there's still some cleanup to do for me before we can do this together in a way that makes sense. Will do it after relasing the next version :-)

@MaciejCaputa
Copy link

MaciejCaputa commented Oct 24, 2016

I find it very useful to be able to print a mkdocs website with material theme and save it as PDF document. At current version there are some media print statements, but I still find myself adding an extra_css to adjust how the document will be formatted when printed/saved to pdf. Can we ensure that the version 1.x.x will have natively print media queries in css that will adjust the styles as well? I don't mind contributing and doing it myself or helping you in some other way.

BTW. I really appreciate your work. The current version of the theme is great and the 1.0.0 is even more promising. Can't wait for official release. ;)

@squidfunk
Copy link
Owner Author

@MaciejCaputa Thanks! I added basic print styles in the last commit (d3ed8cc). Feel free to test it and contribute your adjustments. I would love to hear about your extra stylesheets, because maybe it's of use for all of us :-)

@amadfida
Copy link

@squidfunk when you get a chance, do you mind updating the status of TODO list at the beginning of this issue - Based on your comment it seems like you are making good progress and some of them may already be done. Thanks

@squidfunk
Copy link
Owner Author

@amadfida I updated the list with more detailed tasks that have to be done in the different phases. I will try to accomplish everything within the next week to release 1.0.0-rc.1, because I will be on vacation from 18 Nov to 12 Dec. The RC can then be tested and we should be able to push 1.0.0 out at the end of the year. Sorry for the delay and the promises on releasing 1.0.0 soon, but sometimes other things in life need some more attention than a spare time project. However, everything will be okay in the end and I think the result will surpass 0.2.4 by far.

@amadfida
Copy link

amadfida commented Dec 29, 2016 via email

@brendo
Copy link
Contributor

brendo commented Dec 31, 2016

Excellent!

@omenos
Copy link

omenos commented Jan 5, 2017

Just wanted to pop in here, as I've been using the material theme for a project since I found mkdocs a couple of months ago. I just tested 1.0.0-rc2 with my current documentation site and man is it beautiful! Worked like a charm right off the bat, and makes the whole site look a lot better. And it fixed a bug I was having with code blocks where each line would have the grey backdrop on top of the overall block background.

Nice work! Can't wait for it to become the master branch!

@squidfunk
Copy link
Owner Author

The build is currently broken due to a strange bug. I already filed an issue:
mkdocs/mkdocs#1121

Does any of you tried to build the theme on Linux? Travis suddenly fails.

@brianjking
Copy link

@squidfunk Using the pre-release 1.0.0-rc2 on ElementaryOS I was able to runnpm install and npm run build successfully.

@squidfunk
Copy link
Owner Author

@brianjking thank you. Can you also try it with the rework branch?

@StephaneRob
Copy link

StephaneRob commented Jan 7, 2017

Looks like a Jinja2 issue. Tried on OSX with the last jinja2 version (2.9.1) and get same error.
Tested with Jinja2 2.8 without any issue.

@squidfunk
Copy link
Owner Author

squidfunk commented Jan 7, 2017

An issue was already filed for this error:
pallets/jinja#640

Let's monitor it and hope for a quick fix.

@brianjking
Copy link

@squidfunk Sure, I'll try later today as I have to head out to an appointment in just a minute.

@brendo
Copy link
Contributor

brendo commented Jan 8, 2017

Looks like Jinja 2.9.2 has been released which should resolve the issue.

@squidfunk
Copy link
Owner Author

The build was fixed with the latest commit.

@squidfunk
Copy link
Owner Author

Just released release candidate 3:
https://github.com/squidfunk/mkdocs-material/releases/tag/1.0.0-rc.3

Moved the final release date by one day to Friday the 13th. Let's jinx it.

@Mehran-Baghi
Copy link

Thank you for this beautiful theme. I'm very excited to see the final release.
I had issues with anchor links (permalinks?). Let's say I want to link to a citation in the footnote of my document. I use <a name="Reference-1">1. Reference Description</a> to define the anchor point in the footnote and I link to that by [1](#Reference-1)
In the default mkdocs theme it lands exactly where I put the anchor, however in material theme (both rework and master) it lands few lines blew. So how to fix that? Or what are the best practices for citation?

@squidfunk
Copy link
Owner Author

@Mehran-Baghi can you please file an issue with a Markdown example to reproduce? Please stick to the issue template.

@Mehran-Baghi
Copy link

@squidfunk Sure... #91

@squidfunk
Copy link
Owner Author

Everything is prepared. I will release 1.0.0 here on GitHub and PyPI tomorrow. This will equal the current master.

@brianjking
Copy link

@squidfunk Awesome, can't wait! Thank you for all your hard work!

@squidfunk
Copy link
Owner Author

We're live!

@StephaneRob
Copy link

@squidfunk Thx !

@squidfunk
Copy link
Owner Author

Oh and thank you all for the great collaboration. So many bugs filed that could be fixed prior to the release because of the extensive testing you guys did before. You guys are awesome!

@brendo
Copy link
Contributor

brendo commented Jan 13, 2017

Many thanks for your efforts @squidfunk, you should be very proud of what you have achieved. 🍻

edit: just rolled this out internally across ~10 different sites without issue!

@digitalcraftsman
Copy link

I can only agree - thanks for investing the time to build such an awesome theme 👍 . I'll try to port your new version to Hugo.

@facelessuser
Copy link
Contributor

Great theme! Thanks!

@amadfida
Copy link

amadfida commented Jan 13, 2017 via email

@max-ci
Copy link

max-ci commented Jan 13, 2017

Thank you again for amazing work!

Just a small issue.

Are you sure about webkit-font-smoothing: antialiased?

For me it doesn't look good (less readable) when we have dark background (footer) and small white text (Chrome/Mac - I don't know how it looks on Windows). It looks good on Firefox/Mac (with moz-osx-font-smoothing: grayscale).

Please Stop "Fixing" Font Smoothing



Font smoothing

@squidfunk
Copy link
Owner Author

In my opinion it looks great, even on a non-Retina display. When I turn it off, everything looks pretty bold and jagged.

@squidfunk
Copy link
Owner Author

Closing this issue. Please create separate issues again for bugs and feature requests.

@squidfunk squidfunk mentioned this issue Oct 14, 2019
53 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests