-
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
39 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,41 @@ | ||
# Classhopper | ||
# Glasshopper | ||
|
||
(WIP) Web-based grasshopper client. Future goals include an interactive glossary and guided lessons. | ||
*The grasshopper glossary. It's grasshopper, but just a little more transparent.* | ||
|
||
Code in `master` branch available [here](https://classhopper-co.web.app). Backend availability (rhino compute server that generates solutions) is extremely limited while I focus efforts on the frontend experience. | ||
Glasshopper is a web-based grasshopper client powered by [svgar](https://github.com/cdriesler/svgar) in the frontend and [resthopper](https://github.com/cdriesler/compute.rhino3d/blob/master/src/compute.geometry/ResthopperEndpoints.cs) in the backend. | ||
|
||
![](glasshopper_map.png) | ||
|
||
## Scope | ||
|
||
This project began as a simple proof-of-concept that completed in January 2020. I made a number of poor architectural decisions during this experimental phase, though, that prevented an immediate transition to a usable tool. (Unless you're ok using only 10 components at a time before chrome dies.) I'm currently improving the backbone graphics library, [svgar](https://github.com/cdriesler/svgar), and planning features for the next version of the project. | ||
|
||
**February 2020** | ||
|
||
- [ ] Dramatically improve performance of svgar's render loop | ||
- [X] Enable svgar to render a 3D scene | ||
- [ ] Adopt rhino3dm.js as svgar's geometry system | ||
- [ ] Reduce payload size of [resthopper.js](https://github.com/cdriesler/resthopper) | ||
|
||
**March 2020** | ||
|
||
- [ ] Give glasshopper a facelift | ||
- [ ] Add database to allow snippets to be saved and shared | ||
- [ ] Convert the graph layer from 2D svgar to responsive native divs | ||
- [ ] Convert the scene layer from three.js to 3D svgar | ||
|
||
## How to run | ||
|
||
Glasshopper is *not* comfortable to use in its current state. You can't even delete components. But if you would like to mess with it, you can serve it locally with the following steps: | ||
|
||
- Install [node.js](https://nodejs.org/en/) | ||
- Clone or download this repository | ||
- Create a file named `.env` in the main directory | ||
- Paste `VUE_APP_COMPUTE_SERVER=http://localhost:8081/rhino/grasshopper/evaluate` in that file and save | ||
- Open a command prompt in the main directory | ||
- Run `npm install` | ||
- Run `npm run serve` | ||
|
||
Vue should build and serve the web application. But in order to generate results, you also need to run the rhino compute server. To do so, clone or download [this](https://github.com/cdriesler/compute.rhino3d) repository and follow the steps outlined by McNeel [here](https://github.com/cdriesler/compute.rhino3d/blob/master/docs/installation.md). | ||
|
||
The next version will be hosted online, I promise. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.