-
Notifications
You must be signed in to change notification settings - Fork 248
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
195 changed files
with
9,147 additions
and
187,158 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 |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"cwd": "app" | ||
} |
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,8 +1,19 @@ | ||
*.sconsign.dblite | ||
file | ||
*.out | ||
*.ini | ||
*.v | ||
*.pcf | ||
*.asc | ||
*.bin | ||
*.blif | ||
*.pyc | ||
build | ||
*.log | ||
|
||
etc | ||
.tmp | ||
dist | ||
cache | ||
_build | ||
node_modules | ||
bower_components | ||
|
||
app/profile.json |
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,92 +1,138 @@ | ||
# Icestudio | ||
<img src="./doc/images/icestudio-logo-label.png" align="center"> | ||
|
||
[![R&D](https://img.shields.io/badge/-R%26D-brightgreen.svg)](https://github.com/Jesus89/icestudio) | ||
[![License](http://img.shields.io/:license-gpl-blue.svg)](http://opensource.org/licenses/GPL-2.0) | ||
|
||
Experimental graphic editor for open FPGAs. Tested with Linux and [iCEstick board](http://www.pighixxx.com/test/portfolio-items/icestick/). Built on top of [icestorm project](http://www.clifford.at/icestorm/). | ||
|
||
**Experimental** graphic editor for open FPGAs. Built on top of the [icestorm project](http://www.clifford.at/icestorm/). | ||
|
||
GUI -> JSON -> Verilog, PCF | ||
|
||
![][icestudio-demo] | ||
Supported boards: | ||
|
||
* [iCEstick](http://www.pighixxx.com/test/portfolio-items/icestick/) | ||
* [Icezum Alhambra](https://github.com/FPGAwars/icezum) | ||
* [Nandland Go board](https://www.nandland.com/goboard/introduction.html) | ||
|
||
|
||
## Roadmap | ||
|
||
* Version 0.3.0 | ||
|
||
* Requirements definition: [wiki](https://github.com/FPGAwars/icestudio/wiki/Icestudio-0.3.0:-proposed-features) | ||
|
||
|
||
* Version 0.2.X | ||
|
||
* New blocks, examples and templates: [wiki](https://github.com/FPGAwars/icestudio/wiki/Icestudio-0.2.X:-proposed-content) | ||
|
||
## Installation | ||
## Version 0.2 | ||
|
||
1. Install and configure the [drivers](https://github.com/bqlabs/icestudio/wiki/Installing-the-drivers) | ||
### Installation | ||
|
||
2. Download the [latest release](https://github.com/bqlabs/icestudio/releases), unpack the zip and execute Icestudio | ||
1. Install and configure the [drivers](https://github.com/FPGAwars/icestudio/wiki/Installing-the-drivers) | ||
|
||
NOTE: this is an **early experimental version**. Initially supported on Linux (32, 64), Windows and Mac. | ||
2. Download the [release](https://github.com/FPGAwars/icestudio/releases/tag/0.2.0), unpack the zip and execute Icestudio | ||
|
||
**Documentation: http://icestudio.readthedocs.io** | ||
|
||
NOTE: supported on Linux, Windows and Mac. | ||
|
||
<img src="./doc/images/icestudio-0.2-crono.png" width="700" align="center"> | ||
|
||
<img src="./doc/images/icestudio-0.2-counter-inspection.png" width="700" align="center"> | ||
|
||
## Development | ||
|
||
Install nodejs | ||
Install [Python 2.7](https://www.python.org/downloads/release/python-2711/) | ||
|
||
Install [nodejs](https://github.com/nodejs/node) | ||
```bash | ||
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - | ||
sudo apt-get install -y nodejs | ||
``` | ||
|
||
Install nwjs | ||
### Download | ||
|
||
```bash | ||
sudo npm install -g [email protected] | ||
git clone https://github.com/FPGAwars/icestudio.git | ||
cd icestudio | ||
``` | ||
|
||
Install nw-builder | ||
### Install | ||
|
||
Linux: | ||
|
||
```bash | ||
sudo npm install -g nw-builder | ||
npm install --no-optional | ||
``` | ||
|
||
Install the toolchain with [apio](https://github.com/bqlabs/apio#install) | ||
|
||
### Download | ||
Mac OS X: | ||
|
||
```bash | ||
git clone https://github.com/bqlabs/icestudio.git | ||
cd icestudio | ||
npm install | ||
``` | ||
|
||
### Execute | ||
|
||
```bash | ||
nw icestudio | ||
npm start | ||
``` | ||
|
||
### Package | ||
|
||
```bash | ||
nwbuild -p linux64 icestudio -v v0.12.3 | ||
nwbuild -p osx64 icestudio -v v0.12.3 | ||
nwbuild -p win64 icestudio -v v0.12.3 | ||
npm run dist | ||
``` | ||
|
||
cd build/Icestudio | ||
NOTE: in Mac OS X this commmand generates also a **dmg** package. | ||
|
||
zip -r icestudio-linux64 linux64 | ||
zip -r icestudio-osx64 osx64 | ||
zip -r icestudio-win64 win64 | ||
``` | ||
## Version 0.1 | ||
|
||
### Installation | ||
|
||
1. Install and configure the [drivers](https://github.com/FPGAwars/icestudio/wiki/Installing-the-drivers) | ||
|
||
2. Download the [release](https://github.com/FPGAwars/icestudio/releases/tag/0.1.0), unpack the zip and execute Icestudio | ||
|
||
NOTE: supported on Linux, Windows and Mac. | ||
|
||
![][icestudio-0.1-demo] | ||
|
||
## Videos | ||
|
||
### Version 0.2 | ||
|
||
[![Icestudio: new gui & multiboard](http://img.youtube.com/vi/OWnVCjo7N9Y/0.jpg)](https://www.youtube.com/watch?v=OWnVCjo7N9Y "Icestudio: new gui & multiboard") | ||
|
||
[![Icestudio: block factory](http://img.youtube.com/vi/mAIKb47z2Do/0.jpg)](http://www.youtube.com/watch?v=mAIKb47z2Do "Icestudio: block factory") | ||
|
||
|
||
### Version 0.1 | ||
|
||
[![Icestudio: GUI for open FPGAs](http://img.youtube.com/vi/Okl4Rr_i6Qk/0.jpg)](http://www.youtube.com/watch?v=Okl4Rr_i6Qk "Icestudio: GUI for open FPGAs") | ||
|
||
[![Icestudio: code generation](http://img.youtube.com/vi/pG1DsF9MIj0/0.jpg)](http://www.youtube.com/watch?v=pG1DsF9MIj0 "Icestudio: code generation") | ||
|
||
## Authors | ||
|
||
* Jesús Arroyo | ||
* Jesús Arroyo Torrens | ||
|
||
## Contributors | ||
|
||
* Miguel Sánchez de León Peque | ||
* v0.2: Tomás Calvo, Juan González, Carlos Díaz | ||
* v0.1: Miguel Sánchez de León Peque | ||
|
||
## Credits | ||
|
||
* Using [AngularJS-Flowchart](https://github.com/codecapers/AngularJS-FlowChart) | ||
* v0.2: using [JointJS](https://github.com/clientIO/joint) | ||
* v0.1: using [AngularJS-Flowchart](https://github.com/codecapers/AngularJS-FlowChart) | ||
* Sponsored by [BQ](https://www.bq.com) | ||
|
||
## License | ||
![](https://github.com/FPGAwars/icezum/raw/master/wiki/bq-logo.png) | ||
|
||
![][bq-logo-cc-sa] | ||
## License | ||
|
||
Licensed under [GPLv2](http://opensource.org/licenses/GPL-2.0) and [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/) | ||
|
||
[icestudio-demo]: doc/images/icestudio-demo.gif | ||
[bq-logo-cc-sa]: doc/images/bq-logo-cc-sa-small-150px.png | ||
[icestudio-0.1-demo]: doc/images/icestudio-demo.gif |
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 |
---|---|---|
@@ -0,0 +1,40 @@ | ||
{ | ||
"name": "icestudio", | ||
"description": "Experimental graphic editor for open FPGAs", | ||
"main": "index.html", | ||
"authors": [ | ||
"Jesús Arroyo Torrens <[email protected]>", | ||
"Tom Calvo <[email protected]>" | ||
], | ||
"license": "GPL-2.0", | ||
"keywords": [ | ||
"FPGA", | ||
"open", | ||
"hardware" | ||
], | ||
"homepage": "https://github.com/FPGAwars/icestudio", | ||
"ignore": [ | ||
"**/.*", | ||
"node_modules", | ||
"bower_components", | ||
"test", | ||
"tests" | ||
], | ||
"dependencies": { | ||
"angular": "^1.5.5", | ||
"angular-translate": "^2.11.0", | ||
"angular-translate-loader-static-files": "^2.11.0", | ||
"angular-route": "^1.5.5", | ||
"jquery": "^2.0.3", | ||
"backbone": "^1.2.1", | ||
"lodash": "^3.10.1", | ||
"joint": "^0.9.6", | ||
"angular-bootstrap": "^1.3.3", | ||
"bootstrap": "^3.3.6", | ||
"ace-builds": "^1.2.3", | ||
"select2": "^4.0.3", | ||
"async": "^1.5.2", | ||
"svg-pan-zoom": "^3.2.9", | ||
"alertify-js": "^1.8.0" | ||
} | ||
} |
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 |
---|---|---|
@@ -0,0 +1,73 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
|
||
<head> | ||
<title>Icestudio</title> | ||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | ||
<!-- build:css styles/vendors.css --> | ||
<!-- bower:css --> | ||
<link rel="stylesheet" href="bower_components/joint/dist/joint.css" /> | ||
<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css" /> | ||
<link rel="stylesheet" href="bower_components/select2/dist/css/select2.min.css" /> | ||
<link rel="stylesheet" href="bower_components/alertify-js/build/css/alertify.min.css"></script> | ||
<link rel="stylesheet" href="bower_components/alertify-js/build/css/themes/default.min.css"></script> | ||
<!-- endbower --> | ||
<!-- endbuild --> | ||
<!-- build:css styles/main.css --> | ||
<link rel="stylesheet" href="styles/main.css" /> | ||
<link rel="stylesheet" href="styles/menu.css" /> | ||
<link rel="stylesheet" href="styles/project.css" /> | ||
<!-- endbuild --> | ||
</head> | ||
|
||
<body ng-app="icestudio"> | ||
<div ng-view></div> | ||
<script> | ||
window.$ = window.JQuery = window.jQuery = require('jquery'); | ||
</script> | ||
<!-- build:js scripts/vendors.js --> | ||
<!-- bower:js --> | ||
<script src="bower_components/angular/angular.js"></script> | ||
<script src="bower_components/angular-translate/angular-translate.js"></script> | ||
<script src="bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.js"></script> | ||
<script src="bower_components/angular-route/angular-route.js"></script> | ||
<script src="bower_components/jquery/dist/jquery.js"></script> | ||
<script src="bower_components/underscore/underscore.js"></script> | ||
<script src="bower_components/backbone/backbone.js"></script> | ||
<script src="bower_components/lodash/lodash.js"></script> | ||
<script src="bower_components/joint/dist/joint.js"></script> | ||
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script> | ||
<script src="bower_components/bootstrap/dist/js/bootstrap.js"></script> | ||
<script src="bower_components/select2/dist/js/select2.js"></script> | ||
<script src="bower_components/ace-builds/src-min-noconflict/ace.js"></script> | ||
<script src="bower_components/ace-builds/src-min-noconflict/theme-chrome.js"></script> | ||
<script src="bower_components/ace-builds/src-min-noconflict/mode-verilog.js"></script> | ||
<script src="bower_components/async/dist/async.min.js"></script> | ||
<script src="bower_components/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script> | ||
<script src="bower_components/alertify-js/build/alertify.min.js"></script> | ||
<!-- endbower --> | ||
<!-- endbuild --> | ||
<!-- build:js scripts/main.js --> | ||
<script src="scripts/app.js"></script> | ||
<script src="scripts/controllers/main.js"></script> | ||
<script src="scripts/controllers/menu.js"></script> | ||
<script src="scripts/controllers/project.js"></script> | ||
<script src="scripts/factories/node.factory.js"></script> | ||
<script src="scripts/factories/joint.factory.js"></script> | ||
<script src="scripts/factories/window.factory.js"></script> | ||
<script src="scripts/services/utils.service.js"></script> | ||
<script src="scripts/services/common.service.js"></script> | ||
<script src="scripts/services/graph.service.js"></script> | ||
<script src="scripts/services/boards.service.js"></script> | ||
<script src="scripts/services/resources.service.js"></script> | ||
<script src="scripts/services/profile.service.js"></script> | ||
<script src="scripts/services/tools.service.js"></script> | ||
<script src="scripts/services/compiler.service.js"></script> | ||
<script src="scripts/plugins/connectors/joint.connectors.js"></script> | ||
<script src="scripts/plugins/routers/joint.routers.js"></script> | ||
<script src="scripts/plugins/shapes/joint.shapes.js"></script> | ||
<script src="scripts/plugins/ui/joint.ui.js"></script> | ||
<!-- endbuild --> | ||
</body> | ||
|
||
</html> |
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 |
---|---|---|
@@ -0,0 +1,37 @@ | ||
{ | ||
"name": "Icestudio", | ||
"version": "0.2.0", | ||
"description": "Experimental graphic editor for open FPGAs", | ||
"author": "Jesús Arroyo Torrens <[email protected]>", | ||
"repository": "https://github.com/FPGAwars/icestudio", | ||
"license": "GPL-2.0", | ||
"main": "index.html", | ||
"window": { | ||
"width": 900, | ||
"height": 600, | ||
"min_width": 800, | ||
"min_height": 200, | ||
"toolbar": false, | ||
"resizable": true, | ||
"position": "center", | ||
"icon": "resources/images/icestudio-logo.png" | ||
}, | ||
"engines": { | ||
"node": ">= 0.10.0" | ||
}, | ||
"dependencies": { | ||
"jquery": "^2.2.3", | ||
"os": "^0.1.1", | ||
"path": "^0.12.7", | ||
"ping": "^0.1.10", | ||
"rmdir": "^1.2.0", | ||
"sha1": "^1.1.1", | ||
"tarball-extract": "0.0.3" | ||
}, | ||
"readme": "../README.md", | ||
"keywords": [ | ||
"FPGA", | ||
"open", | ||
"hardware" | ||
] | ||
} |
Oops, something went wrong.