Skip to content
A package to searching courses - Super Mario Maker
Branch: master
Clone or download
Latest commit cae113e May 11, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib fix issues, add badges in readme Apr 19, 2019
test fix lib/typography and test issues ~ codacy Mar 30, 2019
.gitignore fix dependency issues Mar 27, 2019
LICENSE update LICENSE Feb 9, 2019 add badges in readme Apr 19, 2019
package-lock.json review readme ~ remark-lint Mar 27, 2019
package.json update npm readme May 10, 2019


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.

/* Include */
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 ~

You can’t perform that action at this time.