GithubHelp home page GithubHelp logo

http-apis / http-apis.github.io Goto Github PK

View Code? Open in Web Editor NEW
17.0 11.0 21.0 2.91 MB

HydraEcoSystem.Org - Main documentation entrypoint for Hydra Ecosystem's tools.

Home Page: http://hydraecosystem.org

License: MIT License

HTML 19.53% JavaScript 0.35% SCSS 80.13%

http-apis.github.io's Introduction

Hydra Ecosystem Documentation

This is the source-code behind hydraecosystem.org, the official documentation of the Hydra Ecosystem toolset.

Viewing the Documentation Offline

The documentation is hosted on GitHub Pages and uses the static site generator named Jekyll. You may see this video to get started with jekyll. If you want to see what your modifications to the documentation would look like, before you make a PR, please run the following commands:

jekyll -v
  • Start a live-server which serves statically generated content, changes made will make real-time changes to it.
jekyll serve --incremental

Note: Just running the jekyll command without any arguments, might build a static website in html form with-in the public directory, please make sure not to include this in your PR.

Contributing

The Hydra Ecosystem is an Open Soure project and we have our source code licensed under the permissible MIT license, please make any contribution to the project by opening an issue and a subsequent PR to solve the same.

http-apis.github.io's People

Contributors

alohamora avatar amruta-ranade avatar ashwani99 avatar awesomechap avatar chrizandr avatar cindyhyl avatar de-sh avatar farazkhanfk7 avatar guttz avatar iamravitejag avatar kayforkaran avatar mec-is avatar open-risk avatar prajwalm2212 avatar priyanshunayan avatar purvanshsingh avatar sameshl avatar sandeepsajan0 avatar shravandoda avatar shriyansh-j avatar sukhdeepg avatar ujjwal-raizada avatar vaibhavchellani avatar vcode11 avatar vddesai1871 avatar xadahiya avatar

Stargazers

 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

http-apis.github.io's Issues

Warnings on `jekyll seve`

The initiation of the web-server outputs a few warnings in the CLI. These are

Deprecation: You appear to have pagination turned on, but you haven't included the `jekyll-paginate` gem. Ensure you have `gems: [jekyll-paginate]` in your configuration file.

and

Deprecation: The 'plugins' configuration option has been renamed to 'plugins_dir'. Please update your config file accordingly.

Proper Indexing in the documentation

Since documentation can contain many sub-sections, sometimes it's difficult to share some specific section. It can be resolved by ensuring proper indexing of all the sub-sections. This can make navigating around or sharing the documentation easier.

For eg: To reach setting up the GUI section of the in this page, we have to scroll to it. It will be nice to have urls of sub sections like these: https://www.hydraecosystem.org/Design#dataflow (To reach to the data-flow section of the page) in all the pages.

Hydra Python Core Documentation

Currently, at hydra core we have very little usage documentation on how to interact with the Hydra Doc. Also, we have almost no references to it around the documentation as we checked in #18 and it's a quite important repository.

It would be good to have a more detailed on basics of how to interact with the apidoc and other important info, this is a good task for beginners becoming familiar with the Hydra Spec.

Considering UI changes

The documentation is maintained in a manner that is un-structured. Building a UI that helps structure the documentation as well as using a better generator for the same can help make the experience of both the writer as well as the reader/end-user better or more streamlined.

Examples of structured documentation UIs include:

Write an article about Hydra usage for OS maps

This API publishes OpenStreetMap tiles using Hydra: https://tiles.openplanner.team/planet/14/8411/5485/

It would be good to have a page in the docs or an article explaining this implementation.

In particular check usage at:

"hydra:search":{
  "@type":"hydra:IriTemplate",
  "hydra:template":"https://tiles.openplanner.team/planet/14/{x}/{y}",
  "hydra:variableRepresentation":"hydra:BasicRepresentation",
  "hydra:mapping":[{
    "@type":"hydra:IriTemplateMapping",
    "hydra:variable":"x",
    "hydra:property":"tiles:longitudeTile",
    "hydra:required":true
    },{
    "@type":"hydra:IriTemplateMapping",
    "hydra:variable":"y",
    "hydra:property":"tiles:latitudeTile",
    "hydra:required":true}]}}

[UPDATE]
We have already a document page that describes this, but we may want to have an article that demos the usage of navigating the API and explains why Hydra is useful for that.

Create a page that explains the IriTemplate starting from an example

Starting from the triples example in HydraCG/Specifications#171

That has been ported in JSON-LD by @vddesai1998 as:

{
    "@context": "/serverapi/context.jsonld",
    "@id": "https://tiles.openplanner.team/planet",
    "@type": "Collection",
    "search": {
        "@type": "IriTemplate",
        "template": "https://c.tile.openstreetmap.org/{z}/{x}/{y}.examplejsonld",
        "variableRepresentation": "BasicRepresentation",
        "mapping": [
            {
                "@type": "IriTemplateMapping",
                "variable": "x",
                "property": "tiles:longitudeTile",
                "required": true
            },
              {
                "@type": "IriTemplateMapping",
                "variable": "y",
                "property": "tiles:latitudeTile",
                "required": true
            },
              {
                "@type": "IriTemplateMapping",
                "variable": "z",
                "property": "tiles:zoomTile",
                "required": true
            }
        ]
    }
}

Produce a documentation section that explains:

  • which problem is solved (uniquely identify a tile on a map by indication of row, height and zoom)
  • how the variables in the IRI (z/x/y) are mapped to a templates
  • what is VariableRepresentation
  • ...

Update documentation with respect to changes in core and hydrus

A lot of new changes in hydra-python-core and the hydrus server have not been incorporated in the docs yet. This really confuses a new user when he is going through the docs like developing with hydrus.

Some of the major changes required immediately that I can think from the back of my mind are:

  • read-only and write-only properties are now readable and writeable. (Read here)
  • Status Codes now can't be defined in python dict objects. They need to be defined using either HydraStatus or HydraError classes. (related to here)

I will keep appending more changes required to this issue.

Mobile view, overflow

There is a content overflow issue when looking at the website in mobile view.

Screenshot_20190604-211657_Brave
And
Screenshot_20190604-211706_Brave

Display the same.

Twitter widget size

I think the Twitter widget on the main page is too big, compared to the other content on the page. It looks a bit distracting.

It might look more visually pleasing if it was smaller and maybe more to the side rather than centered and huge like it is right now. Something similar to this:

Screenshot from 2019-05-21 09-26-21

Hydra Eco Demo - [Discussion]

Hello guys,

So I've been trying to architect a straightforward but complete demo that enables people to quickly try Hydra Eco's tools and get the feel of Hydra/Semantics/Linked Data. This is what I came up considering our time frame:

(Click to expand)
Group h1

  1. This is the API Graphical representation. It has three already deployed -similar but slightly different- hydrus APIs that the user can select as the target. The goal is to show how decoupled/constant the Agent can be even with different APIs.

  2. This is where the user can interact. Since we want the user to easily interact without much semantics knowledge, this is a dynamic interface(built according to the apidoc) for the Agent. It has buttons for the critical parts so the user can always send some request and see what happens. The red buttons are the selected ones, and a valid combination will always be selected. The goal here is for the user to feel that a hypermedia API will give the Agent enough information to automatically structure all kinds of requests possible and create a descriptive environment .

  3. This is where the user can insert data/filter and write more detailed interactions, instead of only fetching the whole collection. Here the user can also use the new search functionalities and query for linked data. For example, he can filter a drone by the battery of it's State DroneState[Battery]. The goal here is for the user to feel the advantages of Linked data + Hydra.

Important Obs.:

  • This mockup is mostly to discuss functionality. Since I think there's a decent likelihood we use Flask to maintain the whole demo in Python(also up for discussion), it will look different.
  • The graph on the left won't be dynamic, at least at first, or else it will take too long. I'm thinking about three different static SVGs.
  • Mobile responsiveness won't be an initial concern.

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.