2023-03-08 20:33:47 +00:00
|
|
|
![readme-header](https://user-images.githubusercontent.com/1769678/223572353-788d5d38-cd28-40fa-96cd-9d29226f7e4b.png)
|
|
|
|
|
|
|
|
<div align="center">
|
|
|
|
|
|
|
|
![GitHub License MIT](https://img.shields.io/github/license/wbkd/react-flow?color=%23ff0072)
|
2023-03-29 22:02:30 +00:00
|
|
|
![CircleCI](https://circleci.com/gh/markmanx/isoflow.svg?style=shield)
|
2023-03-08 20:33:47 +00:00
|
|
|
|
2023-03-29 22:02:30 +00:00
|
|
|
A highly customizable React component for building interactive network diagrams.
|
2023-03-08 20:33:47 +00:00
|
|
|
|
|
|
|
Coming soon under the MIT licence | Use it now on [isoflow.io](https://isoflow.io)
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
## Key Features
|
|
|
|
|
|
|
|
- **Real-time:** Display real-time data on diagrams.
|
|
|
|
- **Customizable:** Use your own isometric icon packs, or use our free set of networking icons (also under MIT).
|
|
|
|
- **Export options:** Export diagrams as images, JSON or YAML.
|
|
|
|
- **Powerful annotation tools:** Annotate nodes, groups and connectors.
|
|
|
|
- **Step-by-step walkthroughs:** Create interactive tours of large diagrams to help viewers easily digest information.
|
|
|
|
|
2023-03-16 23:19:31 +00:00
|
|
|
## Roadmap
|
|
|
|
|
|
|
|
Migration to open-source: ██░░░░░░░░░
|
|
|
|
|
|
|
|
- [x] Set up automated publishing to NPM registry
|
|
|
|
- [ ] Migrate private JS project to public Typescript project
|
2023-03-23 22:36:34 +00:00
|
|
|
- [x] Pan / Select / Zoom modes
|
|
|
|
- [x] Display icons in sidebar
|
|
|
|
- [ ] Nodes
|
2023-03-22 21:10:13 +00:00
|
|
|
- [ ] Groups
|
|
|
|
- [ ] Connectors
|
2023-03-16 23:19:31 +00:00
|
|
|
- [ ] Publish icons as separate importable package
|
|
|
|
|
2023-03-29 22:23:26 +00:00
|
|
|
## Want to contribute?
|
|
|
|
|
|
|
|
See [good first issues](https://github.com/markmanx/isoflow/contribute).
|
|
|
|
|
2023-03-23 22:36:34 +00:00
|
|
|
## Installation
|
|
|
|
|
|
|
|
Note: Isoflow is currently not production ready. To view it's current state of development:
|
|
|
|
|
|
|
|
`npm install isoflow`
|
|
|
|
|
|
|
|
```
|
|
|
|
import Isoflow from 'isoflow';
|
|
|
|
|
|
|
|
const App = () => (
|
|
|
|
<Isoflow
|
|
|
|
height={500}
|
2023-03-28 22:09:59 +00:00
|
|
|
scene={{
|
2023-03-23 22:36:34 +00:00
|
|
|
icons: [],
|
|
|
|
nodes: [],
|
|
|
|
connectors: [],
|
|
|
|
groups: []
|
|
|
|
}}
|
|
|
|
>
|
|
|
|
)
|
|
|
|
```
|
|
|
|
|
2023-03-23 22:39:13 +00:00
|
|
|
If using Next.js, make sure you only import Isoflow in the browser:
|
|
|
|
|
|
|
|
```
|
|
|
|
const Isoflow = dynamic(() => import("isoflow"), {
|
|
|
|
ssr: false,
|
|
|
|
});
|
|
|
|
```
|
|
|
|
|
2023-03-08 20:33:47 +00:00
|
|
|
## License
|
|
|
|
|
2023-03-16 23:19:31 +00:00
|
|
|
Isoflow is MIT licensed (see ./LICENSE).
|