Code Monkey home page Code Monkey logo

hydra's Issues

Updating structure of README.md

@chriswmackey here are some thought about REASME.md

First of all I think we can merge README.md and changelog.MD into a single file > README.md and use mark down to separate them.

We can/should also add tags and dependencies inside README.md. It will make it google searchable and human-readable on the github page.

One more enhancement is to add a link at the end of the README.me to visualize it on Hydra. To generate the link you will need user's github account that can be an input for the component then it will look like:

http://hydrashare.github.io/hydra/viewer?owner=*githuboccountname&description=*projectname

For example:
http://hydrashare.github.io/hydra/viewer?owner=ayezioro&description=Bounce_Out

Check this example on Hydra

Finally if we can add a link to thumbnail image so it will be rendered once you open the github page it would be very helpful. We will also need the user account name in github to include the link inside the file.

The file would look like

Description

link to Hydra visualization page

Changlog

Tags

Thumbnail

Link comments to Ladybug Tools forum

Automate the process of creating a topic for each hydra on discourse so people can ask their questions and get answers. We don't really check the comments here.

Fix sorting by

If user apply a filter, change the sorting and then remove the filter sorting doesn't work right!

Not all examples are being displayed for a given fork

I have noticed that various examples are missing when we refresh the repo data. I believe the data is refreshed a couple of times per hour but it appears the data that comes back is not consistent as some of my examples are randomly hidden hour to hour. It appears the bug is that not all folders in each fork are properly pulled and posted.

Standardizing Hydra Schema

@mdahlhausen, @chriswmackey and @alfarok and anybody else who is reading this. Here is a proposal to standardize Hydra schema before we get more users. The current schema is software specific and is not generic and extendable. To avoid ending up with slightly different schema for different platforms I'm proposing the structure below.

The main changed are:

  • I merged all the image fields into a single images field
  • I removed date and version fields as we should take them from the github repository. Having two versions and two time stamps can be pretty confusing.
{
"file" : /*full name to the file that will be downloaded on click on download button.
          the file should be located in root.*/
           "myporject.zip",

"thumbnail" : /* full name to an image which is located in root */
          "thumbnail.jpg",

"images" : [    /* 
                        List of images as objects: {image full name : optional description}
                        First image will be loaded on page load by default. All the images should be
                        located in the root folder
                        */
                        {"image1.jpg" : "Grasshopper definition"},
                        {"image2.gif": "Animated Rhino Scene"},
                        {"image3.png": "Dynamo definition"},
                         {"Image4.tiff": "", ...}
                   ],
"videos": {  /*
                  links to videos on youtube, Vimeo, etc.: optional description
                  */
                {"https://www.youtube.com/watch?v=9_u0dnyq2QI", "sunpath tutorial 1"}, ...
                },

"tags": [  /* list of tags as string */
              "EnergyPlus", "Honeybee", "Energy", ...
           ],

"components": { /* component/node name : number of occurrence in the file */
                          "Honeybee_Set EnergyPlus Zone Loads": 1,
                          "Honeybee_Construct Energy Balance": 1, ... 
                        },

"dependencies": [ /* list of plugins used in the definition */
                           "Human", "Ladybug", "Elk", "Mantis Shrimp", ...
                          ]
}

Folder Structure

A Hydra folder includes:

  • README.md: A markdown file that includes descriptions about the Hydra. The file name should always stay as README.md
  • input.json: A json file that follows the above structure. The file name should always stay as input.json (all lower case)
  • thumbnail file: An image file that is addressed in input.json as thumbnail
  • image files: Any image file that is addressed in input.json
  • to be downloaded file: The file that is addressed as "file" in input.json. This file is the only file that will be downloaded

Dynamo 3D Preview Capture

Currently Dynamo does not have a built in method for capturing the 3D preview (geometry), you can only capture the canvas. There should be a way to modify the current method to capture the geometry as well. This could be a pretty interesting node in itself for animations and such.

JSON Dump Error

Hi guys thanks for all the work on the amazing tools.

I wanted to report a bug I encountered in Hydra's writeMetadataFile function, I guess the problem was something related to the encodings of ascii characters or something like that.

This function works:

def writeMetadataFile(fileName, repoTargetFolder, metaDataDict):
    jsonFilePath = repoTargetFolder + '\\' + 'input.json'
    try:
        with open(jsonFilePath, "w") as outfile:
            json.dump(metaDataDict, outfile, ensure_ascii=False)
    except:
        print("Oops!",sys.exc_info()[0],"occured.")
    return jsonFilePath

Creating another Hydrashare

I wish to fork and tinker with Hydra. Are all the files needed to build and run a Hydrashare website already on this repository?

Dynamo/Grasshopper Organization

Now that Hydra is supporting Dynamo and Grashopper I was wondering how we want to organize the overlap. Here are a few issues that come to mind.

-Separating installation files/code on multiple GitHub pages
-Naming conventions (I had to use some of the Grasshopper conventions to have things load properly to the web)
-Old version of Hydra error message (all Dynamo files will show this)

I am sure there are a lot more topics but I figured we could just brainstorm a few ideas of the approach we might take.

GH files missing

Hi,
I've found at least three examples where the GH definition is not found. It happens that those 2 are coming from Mostapha. So maybe some changes happen and they GH is not uploaded anymore.
So FYI in case this is true or sorry if it isn't.
The examples are the Room Orientation Optimization, Shadow Range Study and Remove Glazing Honeybee example.
Thanks,
-A.

change full update to only parsing the updated forks

  • make authenticated Github API calls
  • make a static version of current Hydras. Currently the script exceeds 5 minutes limit of google scripts.
  • update current script to only check the repositories that are updated after the last_update
  • change insert to append and remove. Append the new ones and remove the ones that has been removed!

Adopt to Github Versions

We can use github's versions for the zip file as the main driver of the versions. The version input by user can move to README.md file.

Various browsers issues

I'm having some browser issues (Firefox, Chrome and MS Edge) with some of the u[ploaded files: Armature for Maximum Solar, Armature for Energy-Positive Building Experiment and XmasQMEF. The image crashes the page. The worst is in Firefox, where the browser turns black (all of it).
-A.

connection to DynamoWorks

Hi, would you like to be an admin at dynamoworks and post about Hydra nodes for Dynamo when they become available. If you would like, send me your email address and I will invite you.

Ideally, we could find a way to integrate graph sharing, with wiki, with packages, with node based content like on DynamoWorks.

Make it Easy to Access All of the Hydra Files that a User has Uploaded

I know that we have the search feature for this but putting a quick access button to this page will make a lot of users conscious of their profile ans image to our larger budding community. It will also remind them which files they are responsible for to that they maintain them better.

BUG: List of Hydras Not Updating

A few hours ago, all of my recent THERM example files were appearing on the Hydra main display pageand now they are all gone:
https://hydrashare.github.io/hydra/index.html

The examples are still on my fork and they can still appear in their own viewer pages as you can see this THERM one here:
http://hydrashare.github.io/hydra/viewer?owner=chriswmackey&fork=hydra_2&id=Analyze_THERM_Results&slide=0&scale=1&offset=0,0
So the issue is only with the main page. Specifically, the request to the google macro is not working correctly:
https://script.google.com/macros/s/AKfycbxiRnl-119Qy-Ygchrjp5OiMelYUJCZ-ZHjpwKTm6dtaYCOZ9IZ/exec

https://github.com/HydraShare/hydra/blob/gh-pages/lib/hydra.js#L31-L35

Dynamo 3D Preview Capture

Currently Dynamo does not have a built in method for capturing the 3D preview (geometry), you can only capture the canvas. There should be a way to modify the current method to capture the geometry as well. This could be a pretty interesting node in itself for animations and such.

Runtime Error: expected string got NoneType

Followd the steps in wiki, but got an error
image

Runtime error (TypeErrorException): expected string, got NoneType

Traceback:
  line 37, in isfile, "C:\Program Files\Rhino 7\Plug-ins\IronPython\Lib\genericpath.py"
  line 147, in checkTheInputs, "<string>"
  line 483, in script

How do I solve this problem?

Rewrite the back-end to be more stable and handle more hits

I have noticed this issue for quite some time that the main hydrashare display page will include duplicate files at the bottom of the page and other example files that should be on this page do not display:
image

For example, I cannot find my Urban Weather Generator file on the main page right now because of this.

I have noticed that the missing files change with time and I guess this main page is just failing to find all of the files that it should. I just wanted to put this up here in case anyone had any ideas about it. Maybe we should try refreshing this page every 30 minutes instead of 15 minutes to see if this has any effect.

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.