Siren 0.1.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Siren --version 0.1.0
NuGet\Install-Package Siren -Version 0.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Siren" Version="0.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Siren --version 0.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Siren, 0.1.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Siren as a Cake Addin #addin nuget:?package=Siren&version=0.1.0 // Install Siren as a Cake Tool #tool nuget:?package=Siren&version=0.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Siren
Examples
Flowchart
Python currently not running due to: https://github.com/fable-compiler/Fable/issues/3808
diagram.flowchart(flowchartDirection.bt, [
flowchart.subgraph ("space", [
flowchart.directionBT
flowchart.linkDottedArrow("earth", "moon", formatting.unicode "🚀", 6)
flowchart.nodeRound "moon"
flowchart.subgraph ("atmosphere", [
flowchart.nodeCircle "earth"
])
])
])
|> siren.write
flowchart BT
subgraph space
direction BT
earth-......->|"🚀"|moon
moon(moon)
subgraph atmosphere
earth((earth))
end
end
Class Diagram
let duck,animal,zebra,fish = "Duck","Animal","Zebra", "Fish"
siren.classDiagram [
classDiagram.note "From Duck till Zebra"
classDiagram.relationshipInheritance(duck, animal)
classDiagram.note(@"can fly\ncan swim\ncan dive\ncan help in debugging", duck)
classDiagram.relationshipInheritance(fish, animal)
classDiagram.relationshipInheritance(zebra, animal)
classDiagram.classMember(animal,"+int age")
classDiagram.classMember(animal,"+String gender")
classDiagram.classMember(animal,"+isMammal()")
classDiagram.classMember(animal,"+mate()")
classDiagram.class'(duck,members=[
"+String beakColor"
"+swim()"
"+quack()"
])
classDiagram.class'(fish,members=[
"-int sizeInFeet"
"-canEat()"
])
classDiagram.class'(zebra,members=[
"+bool is_wild"
"+run()"
])
classDiagram.namespace'("Mammals", [
classDiagram.class'(zebra)
])
]
|> siren.write
classDiagram
note "From Duck till Zebra"
Duck --|> Animal
note for Duck "can fly\ncan swim\ncan dive\ncan help in debugging"
Fish --|> Animal
Zebra --|> Animal
Animal : +int age
Animal : +String gender
Animal : +isMammal()
Animal : +mate()
class Duck{
+String beakColor
+swim()
+quack()
}
class Fish{
-int sizeInFeet
-canEat()
}
class Zebra{
+bool is_wild
+run()
}
namespace Mammals {
class Zebra
}
Entity Relationship Diagram
let CAR, NAMED_DRIVER, PERSON, MANUFACTURER = "CAR", "NAMED-DRIVER", "PERSON", "MANUFACTURER"
siren.erDiagram [
erDiagram.relationship (CAR, erCardinality.onlyOne, NAMED_DRIVER, erCardinality.zeroOrMany, "allows")
erDiagram.entity (CAR,attr=[
erDiagram.attribute("string", "registrationNumber", [erKey.pk])
erDiagram.attribute("string", "make")
erDiagram.attribute("string", "model")
erDiagram.attribute("string[]", "parts")
])
erDiagram.relationship (PERSON, erCardinality.onlyOne, NAMED_DRIVER, erCardinality.zeroOrMany, "is")
erDiagram.entity (PERSON,attr=[
erDiagram.attribute("string", "driversLicense", [erKey.pk], "The license is #")
erDiagram.attribute("string(99)", "firstName", comment="Only 99 characters are allowed")
erDiagram.attribute("string", "lastName")
erDiagram.attribute("string", "phone", [erKey.uk])
erDiagram.attribute("int", "age")
])
erDiagram.entity(NAMED_DRIVER, attr=[
erDiagram.attribute("string", "carRegistrationNumber", [erKey.pk; erKey.fk])
erDiagram.attribute("string", "driverLicence", [erKey.pk; erKey.fk])
])
erDiagram.relationship(MANUFACTURER,erCardinality.onlyOne,CAR,erCardinality.zeroOrMany,"makes")
]
|> siren.write
erDiagram
CAR only one to zero or many NAMED-DRIVER : allows
CAR {
string registrationNumber PK
string make
string model
string[] parts
}
PERSON only one to zero or many NAMED-DRIVER : is
PERSON {
string driversLicense PK "The license is #"
string(99) firstName "Only 99 characters are allowed"
string lastName
string phone UK
int age
}
NAMED-DRIVER {
string carRegistrationNumber PK, FK
string driverLicence PK, FK
}
MANUFACTURER only one to zero or many CAR : makes
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- Fable.Core (>= 4.3.0)
- FSharp.Core (>= 8.0.200)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Siren:
Package | Downloads |
---|---|
Siren.Sea
A simple dsl for creating mermaid graphs! |
GitHub repositories
This package is not used by any popular GitHub repositories.