SHINY! SHINY!

A very simple text authoring app for Chrome, designed around the Ace text editor. Ideal for use in educational environments where a distraction-free full screen text editor is required, and particularly for controlled assessments or exams.

Ironically named for it’s minimalistic approach because simple solutions are frequently the best. It’s free, so you can grab the code or install the app from the Google Web Store.

Instructions

You can read the instructions online, or from within the app by pressing ctrl-?. As you would expect, files can be opened, saved and printed and a basic markdown syntax is used for formatting. To aid exam typists in all subjects, international and special characters are supported by their Unicode codes. Full details and the codes themselves can be found in the characters page online, and can also be viewed in the app by pressing ctrl-shift-?.

Autosave

Autosave is available if you have already saved your file at least once during the editing session. The period between saves can be adjusted in the options dialog (press esc in the editor). You can set this to between 1 and 60 minutes.

A recovery save can also be configured if you are using the app in normal or a managed user session mode (unfortunately this is not possible in kiosk apps). Once the app is closed, a download of the current file is initiated to your default downloads directory.

Both of these options are off by default, to match expected controlled assessment conditions, but they can be enabled by policy if you are using managed users or devices. Please see these instructions for more details, and there is an example configuration file available here. Full details of the options that can be configured by policy are below.

Word Counts

A count of words, characters and lines are available in the options dialog (see screenshot below). This is re-calculated when the esc button is pressed. Currently, these word counts will include the text in the page header, so if you require an accurate count of just your own work - add the header just before printing.

If you wish to embed an accurate word-count in your document directly (so that it will be updated when the document is printed), you can use the following text in your document @@#WORD_COUNT#@@, but it must be on its own (exclusive) line. Like page headers (see the next section), you can easily insert these from the ‘Insert’ button on the options dialog, so you don’t need to remember the exact syntax!

Page Headers, Margins and Printing

By default, printing will render with double line height and a 12pt font to comply with UK Exam Board marking requirements (these can be adjusted in the app, or by Chrome App policy for managed devices or users). To override this, press ctrl-shift-p rather than ctrl-p. A title can be added to the start of the document by making it the first line and enclosing it with ampersands, e.g. @This is a Title@.

To add a header (such as exam paper and candidate details) to every printed page, a simple template is used. To access this template, position the cursor at the start of the document and press ctrl-t to insert the header template. Then simply fill in the template with your own details (lines can be added or removed provided the existing formatting is copied). The header will repeat on every page when you print using ctrl-p.

You can use the inbuilt Chrome OS margins to control whitespace around the printed output. If you would like a left or right gutter margin (with the header expanding across the page), you can also set the margins within the options dialog.

Screenshot 1

Using the options dialog box (accessible by pressing the esc key in the editor), you can customise the printed;

Like autosave, these print options can be set by policy if you are deploying the app to managed Chrome OS devices or users. You can find an example configuration file here, or view the configuration section below.

Screenshot 2

Display Options

To help with visual impairments, you can choose between dark text on a light background, bright text on a dark background or bright on dark blue.

Line spacing and text size can also be increased as required.

Screenshot 1

Configure Chromebooks for Exams

You can use this app as a perfect tool for controlled assessments or exams. If you have managed Chromebooks in your organisation, then you can configure some of these devices to boot straight into Shiny! Shiny, using single app kiosk mode. Using Chromebooks for student assessments or exams is easy, fast and secure.

Using the Google Admin Console, administrators can set up a dedicated OU with the appropriate kiosk app settings, then simply move the number of exam devices required into this OU. When they next boot up, they will apply the new policy and launch the app. When the exams are complete, the devices can be moved back to their original OUs and will operate as normal Chromebooks again. Using Cloud Print a printer can be assigned to these devices. Security can further be enhanced by disabling USB devices if required.

Centralised Configuration

Settings available via the options dialog can also be set by policy. There is an example configuration file and schema available in the source code repository.

All the settings that can currently be configured are also listed below:

KeyTypeDefaultDescription
SAVE_RECOVERYBooleanfalseAutomatically save out recovery document on normal app close
SAVE_AUTOSAVEInteger0Time between autosaves once document has first been saved, 0 = No Autosave
PRINT_FONT_SIZEInteger12Sets the default print font size, initially set to 12pt to comply with UK Exam Requirements
PRINT_LINE_BREAKSBooleanfalseWhether line breaks are handled simply, by converting each line into a paragraph
PRINT_LINE_HEIGHTInteger2Sets the default print line height, initially set to double line spacing to comply with UK Exam Requirements
PRINT_HEADER_LINE_HEIGHTNumber1.2Line height for optional candidate page header
PRINT_GUTTER_TOPInteger0Specified in mm, and only applied to the top of the content, e.g. once per document
PRINT_GUTTER_RIGHTInteger0Specified as a % of the page width, this is applied to the content on every page
PRINT_GUTTER_BOTTOMInteger0Specified in mm, and only applied to the bottom of the content, e.g. once per document
PRINT_GUTTER_LEFTInteger0Specified as a % of the page width, this is applied to the content on every page

Licensing

The code is fully open-source but does contain code (many thanks!) from the projects below (any alterations or modifications are marked in the code). Everything else is copyright JD, 2014-2019. This program is free software: you can redistribute it and modify it under the terms of the GNU General Public License (Version 3) as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Please see the full GNU General Public License for more details.

FileFromCopyrightLicense
jquery-3.3.1.min.jsWebsiteCopyright 2005, 2016 jQuery Foundation, Inc.MIT License
showdown.min.jsWebsiteCopyright 2007, John FraserBSD 3-Clause License
bootstrap/*Website2011-2019 the Bootstrap Authors and Twitter, Inc.MIT License
ace/*WebsiteCopyright 2010, Ajax.org B.V.Revised BSD License
EXAMPLE.mdWebsiteCopyright 2014 John GabrieleGNU GPL v3

Recent Versions

One of the important uses of this app is for controlled assessments or exams. This means that functionality changes could have an impact on students taking those exams. As such, any new changes to the app are published in a beta version before they are made available in the production version. Any update below tagged as a ‘BETA Release’ is currently only available on the beta version. Administrators and technical staff should test these releases before any changes are pushed into production. Support subscribers are pro-actively informed about changes, and can participate in the review and suggestion of future changes.

The most recent versions of this tool are below, showing significant functionality changes and improvements.

  • 0.7.7BETAPRODUCTIONLatest
    • Functionality Improvements
    • Open Insert/Overwrite

      • Opening a file will trigger an insert or overwrite question (previously files were just inserted)

      • Added Print option to always parse line breaks as new paragraphs (off by default)

      • Left and Right gutters now specified as percentage of page width

  • 0.7.3
    • Functionality Improvements
    • Policy Configuration

      • Added support for configuration of printing options and autosave behaviour via Google Admin Policy (for managed Chrome OS devices and users)

  • 0.6.2
    • Functionality Improvements
    • Word Counts and Autosave

      • Added Word Counts to the Option dialog, and the ability to embed printable word count in the document

      • Added Autosave (for saved documents) with a 1-60 minute periodic save

  • 0.6.1
    • Visual Updates
    • Dark Blue mode and Save Improvements

      • Added Dark Blue mode for reducing screen fatigue over long periods

      • Improved saving, added button and periodic saves

  • 0.6.0
    • Visual and UI Updates
    • New Features and Component Updates

      • Options dialog to make changing settings easier without using keyboard shortcuts

      • Updated Ace to v1.4.4 (See here for details)

      • Updated Showdown to v1.9.0 (See here for details)

Need Help?

If you are a subscriber, then please email us directly or use the Get Help command under the About menu in any of our web apps to get help with this extension. Otherwise, please feel free to raise an issue on the code repository for this tool (you will need to sign up for a free Github account if you don't already have one). Only subscribers have full access to technical support, but we'll do our best to answer every query if we are able.

© 2015-2019 educ.io. Current site version is 0.1.6v