Coder Social home page Coder Social logo

kai687 / sphinxawesome-theme Goto Github PK

View Code? Open in Web Editor NEW
100.0 3.0 25.0 10.92 MB

Create beautiful and awesome websites with the Sphinx documentation generator.

Home Page: https://sphinxawesome.xyz

License: MIT License

HTML 23.02% CSS 14.80% JavaScript 7.30% Python 54.88%
python documentation documentation-tool sphinx sphinx-theme theme

sphinxawesome-theme's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

sphinxawesome-theme's Issues

Experiment with data-attributes

Data-tooltips for tooltips and data-expanded or something like that for menu state toggles. This should reduce javascript. Maybe this can also help with the collapsible navs issue #52 .

Implement option to hide navbar

Thee navbar should be rendered by default show_navbar=True but one should be able to override this.

If the navbar is not rendered, check, that everything still works on mobile (the menu button must be hidden then as well).

Docs issues

Landing page contains duplicate text about usability improvements. Cloning from GitHub samp directive is not rendered correctly.

bold text looks weird

Strong/bold text has currently font-weight: bolder which probably should just get redefined to medium.

Two options:

  • define every strong/bold to font-medium
  • define only definition list titles to be medium, and add the semibold font back into the mix

Update conf.py with local extension path

With the latest change, the theme needs to be enabled as an extension.
For the netlify build, we need to add the path to the theme so that the
extension can be found locally.

Bundle fonts

I need to only bundle the used fonts. and create the font face rule myself, unless I find a way to strip all the unused fonts from the javascript import.

Copy Code button on parsed literals don't stick

For code blocks, the copy button is attached to the .highlight class and the scrolling happens on the child, the actual pre. For literal blocks, there is no wrapper class, so the copy button moves when scrolling to the right.

I need to either wrap the literal blocks in a container class, to add the copy button, or leave it off for now.

This should be easier with a more powerful code directive (#15)

Consistent focus styles

As much as possible, use colored backgrounds instead of outlines for focus: styles. The outlines are hard to see in some cases. If colored backgrounds are not enough, use focus:shadow-outline

Copy tooltip moves around on touch devices

I need to either find a different way of specifying the position of the element, so that the tooltip stays near the element, or I need to hide it whenever scrolling happens or after a timeout. The issue is that touch events apparently keep the focus while mouse scrolling does not.

Collapsible navs

  • make navigation tree collapsible and expandable. Users should be able to navigate to a specific subsection on a page.
  • like in other themes, individual subsections on a page should also be marked as active when scrolling

vertical bar in titles

Seems like a vertical bar | would be more space saving than a โ€“ in tabs, so let's change that.

Check html_add_permalinks

Apparently, I can use this option to define the character for the permalink. Then I don't have to use this weird hack with hiding one character and showing another. Plus it would make this configurable.

Include instruction about sampdirective

If you want to use it in the documentation, you also need to add it to the extension list.

I could think of a way to automatically add it, since we will always install it anyway.
If import fails for some reason (someone uninstalled it, etc.) I can skip it but it should
work from within the theme.

Fix max width

The search results and the 'copyright info' are not wrapped at max-width like the main content area.

Search pane on mobile

Should not be full screen. It should slide in from the bottom, covering only enough space to show the search input and the label, maybe about a third or so.

improve docs

In "How to install a theme" explain that YOUR_GITHUB_USERNAME should be replaced.

Make margin left of main area grow

On wide screens, I could increase the space on the left side of the main area a bit. If it's easy to implement (e.g. like the Google Developer docs have it), I think it would improve the experience.

Decide on capitalization

In the search pane, Enter Search term hurts my eyes... Decide on capitalization and apply it consistently.

Documentation improvements

  • Include the necessity to provide a heading or caption to tocs when show_nav is false.
  • first sentence of how to configure is superfluous
  • option lists instead of definition lists?
  • the description of the samp directive also reads very odd...

Add aria-label to search input

the input doesn't have an aria-label. Also, we have two times the same ID for the search-pane thing and the search input field.

Get rid of font dependency for semibold

The semibold font weight of Roboto is only used for the 'permalink' character. It looks as well with the 'medium' style, so we can get rid of the semibold font style alltogether.

add anchors to admonitions

It would be nice to be able to link straight to admonitions. It's not recommended to put in anything useful in there,
but it would be cool to add permalinks to the caption of admonitions as well. That may be useful for security-relevant admonitions.

Make variables in code blocks italic

I want to be able to make italicized output of variables in code block. The parsed literal directive should allow that, but I'm not sure yet how to integrate that into a code-block directive.

Search input looks strange on mobile

The search field from the full-height search pane looks strange at least on a mobile Chrome. It appears as if I applied 'rounded-full' which does not show up on Desktop browsers, also not in responsive mode.

Experiment with inline background svg

Instead of putting the svg for the icons straight into the templates, I could use webpack to inline them in the css as background images. This would keep templates cleaner and separated from assets like icons.

Update snackbar visuals

It's bad that the snackbar has two completely separate functions.

  1. The display of messages from the website
  2. Clicking to remove highlighted words.

The second function requires an action but it visually represented the same way. There must be a better visual clue that a user action is required.

Improve README

It seems like I can't really call this theme 'simple', given the amount of features. It would be a good idea to highlight a few of what I consider distinct features of this theme on the README. Also go over the project description in the pyproject.toml file at the same time.

Enable `nav_include_hidden` by default

It just makes more sense to have this on by default if it's the recommended setting. The Read The Docs theme also does that by default, so switching between the two themes should be easier.

Demand less information

To be more compatible with other Sphinx themes, I need to implement a few more checks if information is present, e.g. if no copyright info is present, etc.

Maybe I can also add the Sphinx build information.

HTML title should never be <no title>

Probably have to default back to 'project' or something else. The same is also happening with the alabaster theme, so it doesn't look like a bug to me.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.