CMI holograms provides opportunity to show any custom text in holographic way.

You can even create clickable holograms to perform any type of command as player or as console.
Its packet based and items only exist client side which protect them from being removed by some 3rd party cleaning plugins.
Ingame editor where you can add new lines, remove old ones, relocate to your location or adjust precisely where you want, change activation range or even text spacing.
It’s supports PlaceholderAPI plugin to display any information you want and it can show different information for separate players.
Holograms can have different pages which can be shown separately when needed. Examples below how to setup them.
It can update on defined intervals.
It will hide if you move too far away to minimize load on client and will update only when players are near it.
Has floating icon feature and static ones for most customization.

Option to hide holograms players can directly see. This will help out with client loosing tps due to poor minecraft handling of name plates and will clean out view of area, as you will no longer gonna see holograms behind a wall or on another floor.

Placeholders like %cmi_user_name% can be used when creating lines. Full list can be found at https://www.zrips.net/cmi/placeholders/

To create new hologram use /cmi hologram new [name]

For example /cmi hologram new head tho you still have option to use /cmi holgram which will list out all holograms by distance from you and will contain + sign at end which will help out with new hologram creation.

After creation you can start entering lines by pressing one more green + sign. This will define each line in a hologram.

To adjust hologram configuration, like update rate, update range, make it clickable or even move to new location, click on <Open settings gui> line in your chat box. 

To check list of all holograms simply write /cmi hologram and you will get list sorted by distance, so closest ones will be on top of list, click on desired one and start editing.

ICON:[value]

Only one icon per line can be shown

Floating icons only for 1.10 and above versions of the server.

ICON:[itemName/id]:[data] base format. in example ICON:Stone will create floating stone icon, while ICON:Stone:3 will show floating diorite. If you want you can even show head of a specific player with ICON:head:Zrips. Or in case you want to be really fancy, use ICON:head:%cmi_user_name% which will show players who is looking at that hologram head. To show a glowing icon, add %enchanted% for example ICON:Stone%enchanted%. if you want to show a stack of items, then use amount value separate with – in example ICON:Stone-64
If you want to display in example currently held item in hand as icon, use line like this ICON:%iteminhand% this is only for holograms as of 7.6.0.1+ version. 

In acse you want to show custom models with new system introduced in latest minecraft versions, you can use format as %customModelData:[id]% for example ICON:Brick%customModelData:4% which can result in something like

SICON:[value]

This will define static icon which doesn’t float up and down

You can set static icon in same way as floating one, the difference is base variable SICON instead of ICON

Clickable holograms​

By default holograms are not clickable, you will need to enable it in GUI for each hologram (Stick)
Then you can define commands you want to perform by clicking an appropriate button (Bow icon) This does support specialized commands, so you can go crazy with it. https://www.zrips.net/cmi/commands/specialized/
You can enable or disable special particles which will be shown when successfully clicked on hologram. Enabled by default.
Last and not least, you can switch between big and small button. Keep in mind that enabling big button will make it simpler to click on hologram but at same time it will prevent player from moving throw it.

Creating pages

By default all the text goes into one page. To create another page simply insert new line which looks like !nextpage! and you are done. Now by default player will see only first page (until first !nextpage!) and if you (or player) performs /cmi hologrampages [holoName] (playerName) (next/prev/[pageNumber]) he will change hologram page to defined one. Keep in mind that this only changes for the target player and each player see his own hologram page.
You can have as many pages as you like, but in current settup it can be harder to manage all of them throw ingame editor as it has limited amount of lines it can show at once.
So basic example how to create “Next Page” virtual button for a hologram:
Lets create hologram with name “Rules” and add:
Line 1
Line 2
Line 3
!nextpage!
Line 4
Line 5

Now go to hologram GUI editor by clicking on  and click on button icon which will automatically generate 2 new holograms that will cycle throw pages by clicking them. After that, you can modify those to your own liking or even remove them entirely. They will be named automatically with name format as [hologramName]#< or [hologramName]#>

Click Types

There are 5 types of clicks for you to play around when you have intractable hologram:
!leftclick! – when command starts with this, then only when player clicks with left mouse button and is not sneaking it will be performed.
!shiftleftclick! – when command starts with this, then only when player clicks with left mouse button and is sneaking it will be performed.
!rightclick! – when command starts with this, then only when player clicks with right mouse button and is not sneaking it will be performed.
!shiftrightclick! – when command starts with this, then only when player clicks with right mouse button and is sneaking it will be performed.
None of the above – any type of click will trigger command execution.
Some of the examples:
!leftclick!cmi heal [playerName]
!rightclick!cmi feed [playerName]

Update range defines how far player needs to be for it to start automatic update.
Show range defines how far player needs to be for lines to appear or disappear. This will not trigger self update.
Interval will define how often in second you want to update hologram. By default it will result into every second. But if text is static then it will result in no updates to save server resources. In case you have static text, set update interval to -1, tho this one is deprecated as of 8.3.0.0+ version.
Line spacing can be used to compact lines or spread them apart if needed. By default they will be as close as possible without overlapping.
Icon spacing will define space for icons, as they takes around 2 lines of text.

Use &u color code to have random color which will change on each update