Recommend this page to a friend!
  Classes of Leonardo Mauro Pereira Moraes   JavaScript Super Mario Maker Course Search   Download  
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: JavaScript Super Mario Maker Course Search
Search for courses for Super Mario Maker
Author: By
Last change: Update of
Date: 2 years ago
Size: 3,698 bytes


Class file image Download


GPLv3 license npm JsClasses GitHub Codacy Badge

Super Mario Maker is a game from Nintendo Inc. This module can search courses from the official bookmark site. This module can request and fetching courses data information just passing a query search.


By response the module call a callback function with 2 arguments (error, courses). These arguments: the first is a boolean to check sucess in fetching; and the second is a json with courses informations (like ID, image, maker, difficulty..).

Note: This module makes analysis on the html structure of the bookmark site. In case of site changes, the smm-course-search system may not work correctly.


npm install --save smm-course-search


courses json

The data information retrive:

id: '0000-0000-0000-0000',
difficulty: [..],
clearRate: number,
title: 'Name',
img: 'Url',
thumbnailImg: 'Url',
gameStyle: [..],
createdAt: Timestamp,
tag: [..],
stared: number,
played: number,
shared: number,
clears: number,
attempts: number,
  \_ login: 'Nintendo ID',
  \_ faceImg: 'Url',
  \_ flag: 'Country',
  \_ name: 'Name'

Query Params

The query search parameters are optional, but must be pass at least one.

  gameStyle: ['all', 'marioBros', 'marioBros3', 'marioWorld', 'marioBrosU'],
  courseTheme: ['all', 'ground', 'underground', 'underwater', 'ghostHouse', 'airship', 'castle'],
  region: ['all', 'jp', 'us', 'eu', 'other'],
  difficulty: ['all', 'easy', 'normal', 'expert', 'superExpert'],
  tag: ['all', 'automatic', 'music', 'puzzle', 'gimmick', 'dash', 
        'remix', 'thumbnail', 'costume', 'yoshi', 'theme', 'speedrun', 
        'autoscroll', 'shootEmUp', 'track', 'tradicional'],
  uploadDate: ['all', 'pastDay', 'pastWeek', 'pastMonth', 'beforeOneMonth'],
  sortBy: ['all', 'starRate', 'totalStars', 'lowestClearRate', 'timesShared', 'mostRecent']


There are three functions to search courses:

  • `.getCourses(query, function(error, courses){}` - return first page (max 10 courses).
  • `.getCoursesPages(query, (int) firstPage, (int) lastPage, function(error, courses){}` - return `n` pages.
  • `.getInfinity(query, function(error, courses){}` - search all pages.


Example: How search courses. See test/test.js for other examples.

var SmmCourseSearch = require('smm-course-search');

// ## Try search courses
// For example to get the most recents courses

var query = {
    region: 'us',
    uploadDate: 'pastDay',
    sortBy: 'mostRecent'

SmmCourseSearch.getCourses(query, function(error, courses){
    if(error) console.log('> Courses not exist.');
    else console.log(courses);

Also look ~