Search Unity

  1. Are you interested in providing feedback directly to Unity teams? Sign up to become a member of Unity Pulse, our new product feedback and research community.
    Dismiss Notice

Utilities [RELEASED] Readme - A Rich Text Component Documentation Tool

Discussion in 'Tools In Progress' started by MichaelKatic, Jun 21, 2019.

  1. MichaelKatic


    Mar 22, 2013
    This is a readme component for Unity, attachable to any GameObject as a component to document what you can't in a script or the file system.

    Similar Assets
    There are a host of tools related to documentation but I've had trouble finding something for adding documentation via components. If you know of one feel free to post it!

    This Asset
    This project is meant to allow users the ability to better document Unity GameObjects as whole. Currently, the main ways yous can include documentation in your unity project are

    * With a readme in your file system
    * With comments in your code

    This leaves a gap in the documentation. What do you do when your GameObject requires some simple notes that are not related to an individual script? Or what if you just really want to make sure others know why you've configured a component they way you have? We'll now you can just whip a readme on it!

    Example Usage
    Here are some examples of how it works!

    Edit Text

    Apply Text Styles

    Set Colors

    Change Font Style/Size

    Try It!
    I still don't have any fancy way to try it out. You can access the source code on GitHub!

    A large chunk of that code was actually to fix a bug related to unity cursor placement in a RichText field.

    Let me know what you think!
  2. MichaelKatic


    Mar 22, 2013
    Update - Object Fields!

    Hello! I've been toiling away and have made some progress on this readme editor. Since last post my main focus was to get object fields working. After I did that I spent a lot of time testing. For the last few days I've been doing nothing but bug fixes and I think we're at a point where the tool is acceptable. There are still issues and it's not perfect but we'll get there! On to the update!

    Object fields can now be added inline to the readme rich text.

    Object Fields Example

    After they are added they can be edited like any old rich text, you can copy/paste, update, delete, whatever.

    The way it works is that when you drop an object field into the text, we add a tag that uses the objects instance Id to link back to the object:

    That is what makes it copy/pasteable!

    Next we find those tags in the text and draw object fields overtop of them. Then, when that object field is updated we update the text too. But we also still have to store the objects under the readme component so that Unity serializes the references when a project builds, or unity is closed.

    Object Fields Example
    Lastly we also support older version of unity. I've been testing in 5.6.4 and it's working great there too.

    Beta Testers?
    If anyone is interested in trying the tool out for free I would certainly love someone to help me test and give feedback on anything and everything. If anyone is interested shoot me an email at!

    Changes Since Last Post | GitHub
  3. MichaelKatic


    Mar 22, 2013
    Update - Near Release!

    Hi Everyone,

    I am getting to the point where I am pretty confident in the quality of Readme. However, I still really need some others to try it out so I can make it even better. I am planning on putting it on the asset store soon but have made it available on the Tiny PHX website for free for a limited time before release.

    You can download the unitypackage here!



    Since last update I've done even more stability and user experience improvements. Most notably, the event.current was being consumed and use by the Unity TextEditor. I discovered this was happening when the active TextArea was updating and opened access to using some useful events before consumption.

    • Tack icon in scene for each Readme
    • Can be individually turned off in Advanced options
    • Can be bulk turned off in Advanced options

    As always if you have any feedback I would love to hear!
  4. MichaelKatic


    Mar 22, 2013
    Update - Redistributable!

    Hi Everyone!

    I've just published the first version of Readme to the Unity Asset Store.


    Readonly Mode

    There are now a couple of settings to control a readonly mode in the Advanced settings.

    • Readonly Mode - When enabled the edit button is hidden. This is great for distributing documentation that isn't meant to be edited.
    • Disable All Readonly Mode - When enabled this forces all edit buttons to show. It's useful if you have a lot of readonly Readmes to edit.
    If readonly mode is enabled you have no way to get to the advanced menu to turn it off so I've added a shortcut:
    • Alt+a - toggles Advanced options (even in readonly mode)
    Here is what it looks like in Readonly mode:

    Compared to the normal view:

    Supports Redistribution

    Readme now uses a configuration file for the settings. This allowed me to create a redistributable version without creating a whole new asset. Each one just comes with a different settings file. Yay for simplicity!
  5. FloAtm


    Dec 3, 2018
    Wow! Thanks for the great work :) This looks excellent and is really helpful! Thanks so much for sharing!
  6. ch1ky3n


    Oct 26, 2017
    I was wondering if you could add the "Undo" feature?
    cuz somehow, it is occasionally highlighted the whole document and I accidentally press spacebar which led to clear the whole documents.
    And I couldn't undo it afterward.
    This is a great asset for documenting your project

    EDIT: also could you please investigate highlighting the whole document issue whenever we click something inside the text box?

    It is very irregular, sometimes it is highlighting, and sometimes is not, kinda random.
    Let's say you type a couple of lines, and you want to correct the above line, so you use your mouse and click the above line and it highlighting everything.

    Sometimes it is highlighting everything when you press enter (New Line), which happened to me a couple of times, but I'm unable to repro it.
    Last edited: Jul 16, 2021