Themes: UIkit

Maintained by Picture of Eduardo RamosEduardo Ramos
This theme is built from its core to work with UIkit (a framework similar to Twitter Bootstrap). It is designed to be easily customizable using an interactive visual styles manager.
205 sites
18 fans
Current versions available: 1

UIkit Theme for Moodle

  • Features a very advanced and interactive visual styles customizer
  • 3 base themes to build your site appearance
  • 2 different page layouts: the original Grid based layout and a new one based on new CSS Flex features
  • Fully responsive design
  • Support of Google fonts
  • Integrates Fontawesome 4.5 for displaying most icons in Moodle
  • A renovated Slideshow with many animations and effects, marketing spots and social networks for your site frontpage like in the essential theme
  • Many other cool features such as: login page and navigation menu customization, possibility of showing only enrolled courses in combo lists and google analytics integration

It supports Moodle 2.5 to 3.0

License GNU GPL v3 or later

This theme is based on the UIkit CSS framework version 2.24.3 (

It is inspired by bootstrapbase theme and essential theme ( A big thank you to the creators of these two themes.

Many features and settings are based on the essential theme, while others are new for this theme, specially the visual style manager.

This theme includes an advanced Visual Style Customizer to change the appearance of the whole site with a few clicks. This customizer is inspired by the UIkit customizer (

Notice: these theme is NOT an official UIkit team release.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5


Picture of Eduardo Ramos
Eduardo Ramos (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS


  • Picture of David Mudrák
    Thu, Aug 21, 2014, 7:57 PM
    Hi Eduardo. Thanks a lot with sharing this awesome theme with the Moodle community. I really like it and all the features it comes with. There are couple of things to fix yet though before I can approve it.

    Please merge both language files into a single theme_uikit.php file. The way how you include the customizer.php file via the include() statement may work for the Moodle itself. But we have other tools in the chain that do not expect any PHP execution inside the string files. The language string files should be considered as plain data files rather than full PHP code files. Also, please note that plugins are supposed to ship with the English language pack only. All other translations are handled via our site (including the ability the upload the current Spanish pack there once the theme is approved).

    In lib/savestyles.php you seem to use your own method of reading the passed arguments via $_REQUEST with no extra validation and sanitization. Why not to use common required_param() or optional_param() that Moodle core comes with? Not doing that may have negative security related impacts.

    In config.php, you check for the table existence all the time, on every page load. As the table is added properly via install or upgrade procedure, there is no need to do that, is there? Getting rid of the DDL manager completely here will help the overall performance of the theme.

    I am going to mark this theme as needing more work. I am definitely looking forward the updated version. Thanks for your patience with the review and approval process.
  • Picture of Eduardo Ramos
    Thu, Aug 21, 2014, 8:09 PM
    Hi David,
    Thank you very much for your code review.
    All of your recommendations make total sense, I am fairly new to Moodle and didn't know some of them.

    I will happily fix them and reupload.

  • Picture of David Mudrák
    Fri, Aug 22, 2014, 3:05 PM
    Hi Eduardo. Thanks for the prompt fixes. I am going to approve the theme now.

    There was one thing I wanted to suggest yet. Many sites don't have write access to the $CFG->dirroot enabled for security reasons. It would be better if all the generated styles were put into a file inside $CFG->dataroot that would be then used. It could use similar mechanisms that themes use for the custom CSS - just the CSS would not be read from the database but from another file. In fact, you could just read the value directly from the file storage so there would be no need to duplicate the file.

    In all cases, unless that is fixed, please make sure the plugin description and the README file contains explicit information on what permissions must be set to what files/folders in your theme.

    Good luck with the maintenance of the theme. You are cleared to land now - welcome to the Plugins directory!
  • Picture of Eduardo Ramos
    Fri, Aug 22, 2014, 7:14 PM
    Great! smile

    I had thought of a system that would use the post-process mechanism to put all the final CSS content from the moodledata file. I think it's the same idea as your suggestion. I will give it a try for next version.
  • Germán and Temudgin
    Sun, Aug 24, 2014, 1:54 AM
    Hi Eduardo,

    I just uploaded the Spanish language strings that were inside the ZIP file hosted at Github (with a few minor changes), for theme_uikit, into the Mexican Spanish language pack at AMOS ( ).

    You can register at AMOS and send your International Spanish language strings for the theme_uikit to the language pack maintainers ;
    or I could send the International Spanish pack maintainer the file enclosed within the ZIP file at Github, but they usually don't like it when they receive many strings at once, and your plugin has over 400 strings. Maybe it would be better if you send them sveral files with 50 strings each.

    Gracias por un lindo tema.

    Saludos desde la Ciudad de México
  • Picture of Eduardo Ramos
    Sun, Aug 24, 2014, 2:56 AM
    Hi German,

    Thank you very much for your kind words and working on the mexican spanish translation.
    I already submitted the international spanish translation, but it's still not accepted.

  • Picture of Eduardo Ramos
    Tue, Aug 26, 2014, 12:14 AM
    Hi all,
    I just released a small update that no longer requires any write permissions in the styles folder.

  • Picture of Elberth Gil
    Tue, Aug 26, 2014, 7:22 AM

    UIKit walk into Visual Style Manager and I get an error "An Error Happened while building the styles"

    please request your assistance

    thank you
  • Picture of Eduardo Ramos
    Tue, Aug 26, 2014, 10:35 PM
    HI Elberth, the style manager is very JavaScript intensive and uses a less compiler ( Make sure you are using a modern version of your web browser.

    If it is Internet Explorer, try at least with IE10.
Please login to post comments