Coder Social home page Coder Social logo

openhab / website Goto Github PK

View Code? Open in Web Editor NEW
20.0 12.0 47.0 120.85 MB

This repository contains the final artifacts from which the project website is served.

Home Page: https://www.openhab.org/

Vue 55.79% JavaScript 7.07% CSS 1.73% Ruby 20.46% HTML 9.33% Stylus 5.62%

website's Introduction

This is the openHAB website

Please see CONTRIBUTING.md to learn how to contribute to the site.

Current Page Status

Stable Netlify Status
Latest Netlify Status

website's People

Contributors

bclark09 avatar brobban avatar confectrician avatar cweitkamp avatar darkc35 avatar dependabot[bot] avatar digitaldan avatar ecdye avatar felixschndr avatar florian-h05 avatar ghys avatar github-luckow-org avatar greydelamar avatar hilbrand avatar hmerk avatar imaginator avatar itsanchez avatar j-n-k avatar jimtng avatar kaikreuzer avatar mherbst avatar mherwege avatar openhab-bot avatar pfink avatar pgfeller avatar puresick avatar rkoshak avatar stefan-hoehn avatar thomdietrich avatar wborn avatar

Stargazers

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

Watchers

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

website's Issues

Add support for dark mode

At night the website (especially documentation) can be blinding to the eyes. Maybe we can also support dark mode?

Such a user preference can be detected using the prefers-color-scheme user preference media query. Detection is currently supported by ~76% of all browsers used world wide (see caniuse). For some examples see also MDN.

status.openhab.org not available

Hi @openhab/foundation-staff! The status page isn't available through either

http://status.openhab.org/ or https://status.openhab.org/

On the HTTP site it shows:

Public Status for This Site Is Not Available

Dear visitor,

If you are owner of this website and you created this status page please login into your AppBeat account, click on "Public status" module and enable it from there.

If you need monitoring and public status for your own website please visit www.appbeat.io and sign up for free trial.

Thank you,
AppBeat Team

Better detection of which bundles are installable add-ons

The current assumption is that every subdirectory in the _addons_* directories of the docs' final branch are actual add-ons.
READMEs were recently added to some bundles: transport.modbus, transport.feed, webaudio...
but these shouldn't appear in the end user documentation since they are not add-ons.

Besides, the first two don't respect the convention that an addon should only have a . in its name if it's a sub-addon - the build script therefore assumes that a transport add-on exists and breaks.

We should find a way to properly exclude bundles with READMEs but are not addons from the docs.

cc @Confectrician

Decouple website + documentation

This will solve some issues and allow easier maintenance.

I have this in mind:

  • Spin up a second netlify for doc.openhab.org (Change the DNS CName of the openhab.org domain accordingly)

  • The documentation repo build instructions will clone the website repo (for the styling and vuepress stuff). This makes the docu team independent of the website build cycle. And we can add whatever we need on the docu side to vuepress for better documentation.

  • Let the addon repos generate a summery off all bindings and docs etc on each master push and let us upload that artifact to bintray (move the responsibility to us OH2-addons maintainers to serve that file instead of the docu or website team to crawl us).

  • Whenever the website is build (cron triggered once a day is best I guess) it collects the bintray artifact, moves the included markdown files to the correct position and uses the bundled json or whatever metadata for whatever else need to be done.

Use Algolia DocSearch for search

The lack of full-text search has been brought up several times, for instance in #28, and is a valid point.

VuePress has built-in support for Algolia DocSearch which offers that and presumably better search results, for free. It's already used in a number of high-profile websites.
See it in action of a similar VuePress site here: https://www.vuemeetups.org

Using it instead of the default header-based search is easy and it makes sense to consider it.

  1. A request should be submitted at https://community.algolia.com/docsearch/ (by @kaikreuzer as the owner of the website);
    The URLs to crawl should be both https://www.openhab.org/docs/ + https://www.openhab.org/addons/
  2. They will add our site to their crawler here: https://github.com/algolia/docsearch-configs/tree/master/configs and reply with configuration information by email;
  3. I will adapt the config as documented here: https://vuepress.vuejs.org/default-theme-config/#algolia-search;
  4. @MHerbst: a mention in the Privacy Policy would have to be added I think, since their API would be called when searching? Their privacy policy is here: https://www.algolia.com/policies/privacy - they appear to have updated it for the GDPR.

What do you think, should we at least give it a try?

Load Google Fonts from openhab.org instead of Google

As a result of the GDPR, there have been discussions, especially in Germany whether it is allowed to download fonts from Google without asking or informing the user before the fonts are loaded ...

In order to avoid any problems with the fonts, we could load the fonts from openhab.org. There is a nice tool on https://google-webfonts-helper.herokuapp.com/fonts that helps with downloading the necessary fonts files from Google Fonts.

I have tried it for my own website and it worked smoothly.

Upcoming events on start page

It would be cool if we could show the next 2-4 upcoming events directly on the start page (best case: without scrolling).

Put binding schema xsd on openHAB website

The binding xsd point to eclipse smarthome. With the move of ESH to openHAB-core these schemas should also be updated I think.

I assume these should be put here on the website? What would be the desired location (So I can create a PR)? And is the list below complete?

I could find the following schemas:
Binding

<binding:binding id="<id>" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:binding="http://eclipse.org/smarthome/schemas/binding/v1.0.0"
	xsi:schemaLocation="http://eclipse.org/smarthome/schemas/binding/v1.0.0 http://eclipse.org/smarthome/schemas/binding-1.0.0.xsd">

Thing

<thing:thing-descriptions bindingId="<id>" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:thing="http://eclipse.org/smarthome/schemas/thing-description/v1.0.0"
	xsi:schemaLocation="http://eclipse.org/smarthome/schemas/thing-description/v1.0.0 http://eclipse.org/smarthome/schemas/thing-description-1.0.0.xsd">

Config

<config-description:config-descriptions
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:config-description="http://eclipse.org/smarthome/schemas/config-description/v1.0.0"
	xsi:schemaLocation="http://eclipse.org/smarthome/schemas/config-description/v1.0.0 http://eclipse.org/smarthome/schemas/config-description-1.0.0.xsd">

apple-touch-icon has transparent background

Especially on a dark background, e.g. start page of Firefox with dark theme, the apple-touch-icon of the website is hard to see.
Here's a comparison of these icons from community.openhab.org (left), openhab.org (middle) and openHAB Server 2.5 (right):
grafik

Search returns broken duplicates for "Developer Guide"

Most wanted / upcoming features and bugfixes

In the community, we repeatedly discussed the concept of a "roadmap" (e.g. here). Many people would like to see an overview of "most wanted" featured and also about upcoming features for the next version. I want to clearly state that, of course, nobody can enforce or guarantee any progress on certain issues within a specified time (so please, let's exclude this discussion here).

But it clearly would help to bring focus on topics that many people are interested in. An issue that already interests many people, will likely also be a point of interest for others who didn't saw the issue yet. The average user is not expert of the openHAB architecture, so he don't know which repositories exist, where too look, how to filter, and so on. For those people (and I'm sure also for technical users) it would be cool to have two dynamic inline overviews on the website:


Most wanted features

Query for all open issues and PRs, descending by +1 reactions / upvotes:

Both queries could be aggregated / merged using the search api.

Upcoming features

Here we would have merged PRs since the last release, preferably also ordered descending by +1 reactions. For filtering the right PRs, probably the same criteria can be used like for @BClark09's changelog: https://gist.github.com/BClark09/6f13345f0a7f38482b444b47c397a1b4


Voting: Currently, the built-in GitHub vote mechanisms are not used so often, and they're also not used consistently. It would be good to give hands-on advice on the website how to vote for an issue or (even better) use some GitHub integration / API to make it possible directly voting for an issue / PR on the website.

Icons missing

On the icons page, the icons are no longer displayed.

Change default docs version

Until now, we always had the docs on the "latest" setting as default, which meant we where even to the snapshot builds.

With OH 3 in back, we should think about making the 2.5.0 docs version default for the upcoming year.

@kaikreuzer / @ghys
Wdyt?

Anchors for the addons page

We need anchors to be able to jump directly to an add-on group.

I am currently working on some linkchecker errors and i have dozens of links replaced with just "addons.html".
This doesn't help anyone if we aren't able to point to a specific addon section.

Events are marked as "past" too early

Today is June 5 and both events "building IoT 2018" as well as "SINTEG-Jahreskonferenz 2018" are already listed as "past events" (and thus do not show up on the homepage anymore), although both events end tomorrow evening only.

My expectation therefore is that they are only considered "past" from June 7 onwards.

[Download Page] Can we get system based anchors?

Hi,

Is it possible to add anchors and hashed urls that open the downlad page with a specific tab?

Something like https://www.openhab.org/download/#linux or https://www.openhab.org/download/#windows_snapshot or
https://www.openhab.org/download/#windows_stable.

Which could be set on the corresponding buttons of the download page.

We could then replace links on the docs installation pages with simple and easy maintanable direct links.

Wdyt?

Document how to generate a static website for stable releases

Currently buried in the commit message for 13d2869.

  • checkout the archive branch
  • ensure there's no remaining generated content under docs & addons
  • change available versions here:
    versionNumbers: ['latest', '2.3', '2.2'], //, '2.1'],

    (note to self: use frontmatter/root level config in the future?)
  • set OH_DOCS_VERSION=2.4
  • ruby prepare-docs.rb
  • vuepress build
  • checkout master again & create a PR branch
  • copy the site in the vuepress folder under .vuepress/public/v2.4
  • push, open the PR and merge

RSS feed for blog

Hey, I'm totally aware that the whole page is far from done and you've done a tremendous job so far. Just in case you were not aware yet, the blog (an area I especially wanted for the new page) does not yet offer an RSS/Atom feed. No stress ;)

Discourse API: Allow CORS access

At the moment the community forum API cannot be accessed form a client (browser) app directly.
Would it be viable to add the required CORS headers for access? A rate limit can of course be applied.

Tab-Style possible?

Hi,

Is it possible to add tabs in the standard theme?
I would love to have to ability to save rule examples in more than one rule language we support.

This was my idea of how it could look:
rulesTabs

Would be very nice, if this would work in theory.
If yes, we would have to find a way to reflect this in our markdown files, but i will start thinking about it when i have an answer here.
Doesn't make sense to do so, when it isn't possible with vuepress.

Build is failing

https://app.netlify.com/sites/openhab-website/deploys/5cafa3572befd2017b46fda7

10:35:14 PM:  FAIL  Error rendering /docs/administration/bundles.html:
10:35:14 PM: TypeError: Cannot read property 'match' of undefined
10:35:14 PM:     at getHash (node_modules/vuepress/lib/default-theme/util.js:13:21)
10:35:14 PM:     at util_isActive (node_modules/vuepress/lib/default-theme/util.js:47:19)
10:35:14 PM:     at server-bundle.js:6315:14
10:35:14 PM:     at Array.some (<anonymous>)
10:35:14 PM:     at resolveOpenGroupIndex (node_modules/vuepress/lib/default-theme/Sidebar.vue:73:0)
10:35:14 PM:     at VueComponent.refreshIndex (node_modules/vuepress/lib/default-theme/Sidebar.vue:51:0)
10:35:14 PM:     at VueComponent.created (node_modules/vuepress/lib/default-theme/Sidebar.vue:40:0)
10:35:14 PM:     at callHook (/opt/build/repo/node_modules/vue/dist/vue.runtime.common.js:2919:21)
10:35:14 PM:     at VueComponent.Vue._init (/opt/build/repo/node_modules/vue/dist/vue.runtime.common.js:4628:5)
10:35:14 PM:     at new VueComponent (/opt/build/repo/node_modules/vue/dist/vue.runtime.common.js:4796:12)
10:35:14 PM:     at createComponentInstanceForVnode (/opt/build/repo/node_modules/vue-server-renderer/build.js:7353:10)
10:35:14 PM:     at renderComponentInner (/opt/build/repo/node_modules/vue-server-renderer/build.js:7527:40)
10:35:14 PM:     at renderComponent (/opt/build/repo/node_modules/vue-server-renderer/build.js:7502:5)
10:35:14 PM:     at RenderContext.renderNode (/opt/build/repo/node_modules/vue-server-renderer/build.js:7418:5)
10:35:14 PM:     at RenderContext.next (/opt/build/repo/node_modules/vue-server-renderer/build.js:2436:14)
10:35:14 PM:     at cachedWrite (/opt/build/repo/node_modules/vue-server-renderer/build.js:2295:9)
10:35:15 PM: npm
10:35:15 PM:  ERR! code ELIFECYCLE
10:35:15 PM: npm
10:35:15 PM:  ERR! errno
10:35:15 PM:  1
10:35:15 PM: npm
10:35:15 PM: ERR! [email protected] build: `ruby prepare-docs.rb && ruby add-blog-meta.rb && vuepress build .`
10:35:15 PM: npm
10:35:15 PM:  ERR! Exit status 1
10:35:15 PM: npm
10:35:15 PM: ERR!
10:35:15 PM: npm ERR!
10:35:15 PM:  Failed at the [email protected] build script.
10:35:15 PM: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
10:35:15 PM: npm ERR!
10:35:17 PM: failed during stage 'building site': Build script returned non-zero exit code: 1
10:35:15 PM:  A complete log of this run can be found in:
10:35:15 PM: npm ERR!     /opt/buildhome/.npm/_logs/2019-04-11T20_35_15_237Z-debug.log

Will have a look myself but wanted to pin it here.
Maybe someone is faster than me.

Chocolatey 2.3 installation procedure should not be recommended in it's current form

The current installation page:
https://www.openhab.org/download/

Currently mentions Chocolatey as the first installation option.
However this package in it's current form should not be used:
It installs all bindings and UI's by default.
Some of these bindings also give error's when running on WIndows.

Recommended solutions:
A. Remove the Chocolatey procedure from the downloads page
B. Fix the package to not install all bindings by default.

More Info.
https://community.openhab.org/t/unsure-about-installation-procedures-for-windows/46232

Remove "actions" section from Addons Page

I question if it makes sense to list the OH1 actions (https://www.openhab.org/addons/#action) on the Add-ons page ("Show legacy add-ons" is off). Some of the listed actions have a OH2 successor already like the for Kodi, MQTT, Astro, Homeatic, DSC, Harmany. Some are just rather strange like Weather, xLP.

Those listed ones should be removed in any way. What remains are notification services and protocols like XMPP, Mail, PushBullet, Pushover, Pushsafer, Prowl, Twitter. I wonder if the category can be renamed to use the word "Actions" for the new automation engines actions.

License

We should set a license here soon as long as the list of people we have to get approval from stays short. I'd suggest BY-NC-SA. Before, we probably have to get rid of the images that can't be published under such license.

Anchors for headers are not kept in url

Very often, I want to link to a specific section in the docs, such as e.g. https://www.openhab.org/docs/installation/windows.html#connecting-to-the-openhab-console.

But when selecting this anchor, the browser directly changes its url to https://www.openhab.org/docs/installation/windows.html#starting-openhab-as-a-service (which is the section that has a menu entry on the left).

When I now copy&paste the url, I very often do not notice it and thus have the wrong url posted.

Is there any way to keep the anchor in the url in place for such cases?

The MQTT1 binding is considered superseded by the new unreleased one

Since last deployment, the new MQTT binding from ESH has been imported:
https://www.openhab.org/addons/bindings/mqtt/

And this has automatically superseded the former 1.x binding, which doesn't appear in lists and the sidebar anymore (unless "show legacy bindings" is checked):
https://www.openhab.org/addons/bindings/mqtt1/

I'm not sure it's correct.

Also, the "edit link" page is wrong - it thinks it's an openHAB 2 binding; the reason is because it doesn't appear yet in https://github.com/openhab/openhab-distro/blob/master/features/addons-esh/src/main/feature/feature.xml which is used to determine which bindings are from ESH.

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.