This repository has been archived on 2023-11-14. You can view files and clone it, but cannot push or open issues/pull-requests.
vogue/readme.md

57 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

2021-05-25 14:06:42 -04:00
![](/docs/banner.png)
![Travis (.com)](https://img.shields.io/travis/com/marcus13345/vogue)
![Codecov](https://img.shields.io/codecov/c/github/marcus13345/vogue)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fmarcus13345%2Fvogue.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fmarcus13345%2Fvogue?ref=badge_shield)
![npm bundle size](https://img.shields.io/bundlephobia/minzip/vogue)
[![NPM](https://nodei.co/npm/vogue-runtime.png?downloads=true&downloadRank=true)](https://nodei.co/npm/vogue-runtime/)
Vogue is a programming language that leverages javascript to create no-config graph systems.
# Getting Started
To create a vogue system, create a vogue module file in a new folder:
`example/main.v`
```
singleton;
restore {
console.log('Hellow Vogue!');
}
```
then run your system with `vogue example`.
# NPM Integration
your vogue system folder may have a `package.json` and a `node_modules` folder. If they do, you can import javascript modules into your vogue module.
```
example
|-- package.json
|-- main.v
`-- node_modules
`-- package
|-- package.json
`-- index.js
```
```
singleton;
import package from 'package';
restore {
console.log(package.foo());
}
```
# Persistence
Vogue systems automagically persist their data, unless otherwise specified. This data is stored inside the `.system` directory.
# Documentation
For the full spec of vogue module syntax, see: [syntax](docs/syntax.md).
To see some common examples and programming patterns, see [examples](examples).
# License
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fmarcus13345%2Fvogue.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fmarcus13345%2Fvogue?ref=badge_shield)