Nerfing Powerful Megalomaniacs


    0.2.0 • Public • Published


    Nodeledge-base was highly inspired by Raneto. This version has support for more authentication types such as:

    • LDAP
    • Google Auth

    nodeledge-base has plans to support many more forms of authentication.

    Creating an Instance

    Create a server with

    // Require modules
    var debug = require('debug')('nodeledge-base');
    var nb = require('nodeledge-base');
    // Import configurations
    var config = require('./config.js');
    var app = nb(config);
    // Load the Server
    var server = app.listen(app.get('port'), function () {
      debug('Express HTTP server listening on port ' + server.address().port);

    Configuration Options

    var config = {
      // Your site title (format: page_title - site_title)
      site_title: 'Raneto Docs',
      // The base URL of your site (can use %base_url% in Markdown files)
      base_url: '',
      // Used for the "Get in touch" page footer link
      support_email: '',
      // Footer Text / Copyright
      copyright: 'Copyright &copy; ' + new Date().getFullYear() + ' - <a href="">Powered by Raneto</a>',
      // Excerpt length (used in search)
      excerpt_length: 400,
      // The meta value by which to sort pages (value should be an integer)
      // If this option is blank pages will be sorted alphabetically
      page_sort_meta: 'sort',
      // Should categories be sorted numerically (true) or alphabetically (false)
      // If true category folders need to contain a "sort" file with an integer value
      category_sort: true,
      // Controls behavior of home page if meta ShowOnHome is not present. If set to true
      // all categories or files that do not specify ShowOnHome meta property will be shown
      show_on_home_default: true,
      // Which Theme to Use?
      theme_dir  : path.join(__dirname, 'node_modules', 'nodeledge-base', 'themes'),
      theme_name : 'default',
      // Specify the path of your content folder where all your '.md' files are located
      // Fix: Needs trailing slash for now!
      // Fix: Cannot be an absolute path
      content_dir : path.join(__dirname, 'content'),
      // Where is the public directory or document root?
      public_dir  : path.join(__dirname, 'node_modules', 'nodeledge-base', 'themes', 'default', 'public'),
      // The base URL of your images folder,
      // Relative to config.public_dir
      // (can use %image_url% in Markdown files)
      image_url: '/images',
      // Add your analytics tracking code (including script tags)
      analytics: '',
      // Set to true to enable the web editor
      allow_editing : true,
      // Set to true to enable HTTP Basic Authentication
      authentication : true,
      // If editing is enabled, set this to true to only authenticate for editing, not for viewing
      authentication_for_edit: true,
      // If authentication is enabled, set this to true to enable authentication for reading too
      authentication_for_read: false,
      // Google OAuth
      googleoauth: false,
      oauth2 : {
        client_id: 'GOOGLE_CLIENT_ID',
        client_secret: 'GOOGLE_CLIENT_SECRET',
        callback: 'http://localhost:3000/auth/google/callback',
        hostedDomain: ''
      ldapauth: true,
      ldap : {
        server: {
            url: 'ldap://',
        usernameField: '',
        passwordField: ''
      secret: 'someCoolSecretRightHere',
      credentials    : [
          username : 'admin',
          password : 'password'
          username : 'admin2',
          password : 'password'
      locale: 'en',
      // Support search with extra languages
      searchExtraLanguages: ['ru'],
      // Sets the format for datetime's
      datetime_format: 'Do MMM YYYY',
      // Set to true to render suitable layout for RTL languages
      rtl_layout: false,
      // Edit Home Page title, description, etc.
      home_meta : {
        // title       : 'Custom Home Title',
        // description : 'Custom Home Description'
      // variables: [
      //   {
      //     name: 'test_variable',
      //     content: 'test variable'
      //   },
      //   {
      //     name: 'test_variable_2',
      //     content: 'test variable 2'
      //   }
      // ]
      table_of_contents: false


    Supported Node Versions:

    • v10.x.x
    • v8.x.x


    The original version was created by Gilbert Pellegrom from Dev7studios.

    It is also maintained by Ryan Lelek from Released under the MIT license.


    npm i nodeledge-base

    DownloadsWeekly Downloads






    Unpacked Size

    1.11 MB

    Total Files


    Last publish


    • lunajos