Help

If you are having trouble or experiencing errors while using this software then please send an email to support@classydiagrams.com detailing the problem.

Currently we support all major browsers but please make sure you have the latest version.

Logging in

There are three different ways to create an account and log in to the software:
1) Authenticate via Twitter
2) Authenticate via Facebook
3) Manually create an account

Anthenticating via Twitter or Facebook allows you to quickly create an account using your details from those services. The process for both is very similar. After clicking the sign in button your details will be checked and then you will be asked to allow access to the site "Classy". Once you accept you will be returned to this site and your account will be created. On a return visit to the site you simply click the same button again and it will log you straight in.

The third option is to simply create an account yourself by choosing a username and password and filling in the "Create an Account" form. Next time you visit the site you can use those details to login with the "Basic Login" form.

Once you've logged in to the software you can always add the other login methods to your account by visiting the "My Account" and adding those details.

Create a diagram

To create a new diagram you need to be on the "Dashboard" screen. There is a link on this page to "Create New Diagram". Click that link and you will a form asking you to input a name for the new diagram. Enter a name and click "Create" then you will be taken to that diagram in edit mode.

Other dashboard options

For existing diagrams in your account you have four options.
1) View: This allows you to view the diagram and make changes.
2) Edit: This allows you to edit the name of the diagram.
3) Clone: This create a copy of the selected diagram.
3) Delete: This removes a diagram from your account.

Adding a class

In the diagram view mode, to add a new class, simply drag the "New class" icon on to your diagram and it will automatically become a new class for you to edit.

Edit a class

Clicking a class will select the edit mode. Editing is done by simply entering plain text in a particular format (detailed below). Once you have fiished editing just click away from the class and the changes will be saved.

Remove a class

To remove a class simply click it to enter edit mode and you will see a "Remove" button in the top right. Click this and then confirm when asked to remove the class.

Syntax

Header

The header defines the name of your class and, optionally, its base class and documentation. Use the '>' character to define a class's base class.

className [ > baseClassName ] [ documentation ]

For example a dog could be defined as follows:

Dog > Animal Type of animal that barks and fetches sticks.

Separator

The separators are easy; they ar simply two dashes. Each class must have two separators: one between the header and properties and one between the properties and methods.

--

Properties

Properties must have a name. They may optionally have a type, default value and documentation. It is recommended that you add type even for languages that are not strictly typed, as it will be added to the documentation.

[ accessLevel = + ] propertyName [ : type ] [ = defaultValue ] [ documentation ]

Where:

accessLevel = + | -

And:

+ = Public
- = Private

For example, a public property for the dog length could be defined as follows:

+ height : number Length of dog in centimeters.

Or, a private property could be defined as follows:

- walkies : Time = "18:00:00" Time for walkies.

Methods

Methods must have a name. They may optionally have a return type, parameters and documentation. The parameters are listed on succeeding lines as described below.

[ accessLevel = + ] methodName [ : returnType ] [ documentation ]

For example, a method could be defined as follows:

sit : void Sit down.

Parameters

Method parameters a listed on the lines following the method declaration and start with a pipe. The name is required, optionally followed by type, default value and documentation.

giveBiscuits Feed the dog some treats.
|flavour : string Flavour of biscuit.
|biscuitCount : number = 5 Number of biscuit to give.

Complete example

Putting it all together, we have:

Dog > Animal Type of animal that barks and fetches sticks.
--
height : number Length of dog in centimeters.
- walkies : Time = "18:00:00" Time for walkies.
--
giveBiscuits Feed the dog some treats.
|flavour : string Flavour of biscuit.
|biscuitCount : number = 5 Number of biscuit to give.