Skip to content

labibramadhan/cbt-crossword-web

Repository files navigation

Computer Based Test - Crossword

Dependency Status devDependency Status

This is the open source version of my original project called Ujian Berbasis Komputer - Teka-teki Silang (Computer Based Test - Crossword). So this closed source project does exist since 13 September 2016. The open source version initialized on 12 January 2017. Every suspicious commercials activity of this project happened before 12 January 2017 are marked as illegal.

The differences from the closed source version are:

  1. Variable names translated from Indonesian to English
  2. I10n or I18n supports
  3. Model & code adjustments either on API Server or Mobile Application packages
  4. Using ES6 & ES7 javascript language

Table of Contents

  1. Features
    1. Screenshots
  2. Showcase
  3. Prerequisites
  4. Installation
  5. Configuration
  6. Testing
  7. Running
    1. Development
    2. Production
  8. Credits

Features

  • Participants may do the test on mobile version application. Check out the CBT Crossword Mobile project
  • Automatically creates random crossword patterns on every participant entering the test page
  • Questions data can be reused on another question package
  • Limitation of test duration
  • Graph of correct & incorrect answered questions analysis (rank the most incorrect & correct answered questions)
  • Graph of grade average comparison each test schedules
  • Rank/sort participant grades based on the grade value
  • Import users, questions, question packages and question package schedules from a Microsoft Excel formatted file
  • Export grades to a Microsoft Excel formatted file

Screenshots

NOTE: Screenshots are still using the closed source version (all of them uses Indonesian language), you can hover on any screenshot image to see summarized feature in english

UBK TTS | CBT Crossword Web - Admin - Dashboard

UBK TTS | CBT Crossword Web - Guru - Dashboard

UBK TTS | CBT Crossword Web - Participant - Test

UBK TTS | CBT Crossword Web - Participant - Test

UBK TTS | CBT Crossword Web - Guru - Schedule Management

UBK TTS | CBT Crossword Web - Guru - Package Management

Showcase

GESS INDONESIA 15 September 2016 UBK TTS WEB

GESS INDONESIA 15 September 2016 UBK TTS MOBILE

This application has been presented on GESS (Global Educational Supplies & Solutions) Indonesia event on 15 September 2016 at Balai Sidang Jakarta Convention Center.

Prerequisites

  1. NodeJS v6+
  2. Bower

Installation

First, download the latest released zip version of this package into your local machine. Then type these commands:

>_ npm install
>_ bower install

NOTE: Before using this application, you have to install & configure CBT Crossword API first

Configuration

Assumed you have configured and running a CBT Crossword API server package, if you have changed the connection port of the server package, you have to configure those variables:

  1. urlBase variable value on rest.js
  2. API_BASE constant value on app-constant.js

Testing

Testing for the first time, you have to download the configured Selenium WebDriver on this project by using this command:

>_ npm run update-webdriver

After the Selenium WebDriver installed, you have to start the development server first, and then you can execute the end-to-end test scenarios by using command:

>_ npm test

Running

Development

For development purpose, this project is using the benefits of Webpack Dev Server:

  • Realtime transformation using babel-loader
  • Compiled bundle is easily to debug by using inline-source-map devtool option
  • Auto reload the browser tabs on every files included on index.js have changed

Type this command to start the development server:

>_ npm run dev

After that, you can visit http://localhost:8585 on your browser to start using this application on development mode.

Note that you can change the configured development server port (8585) from webpack.config.js file.

Production

For production purpose, you need to build the project first by using this command:

>_ npm run build

Then, you can start serving your production ready package by using this command:

>_ npm run serve

After that, you can visit http://localhost:2796 on your browser to start using this application on production mode.

Note that you can change the configured production server port (2796) from package.json file.

Default Accounts

Admin
email: [email protected]
pass: asdqwe123
Guru
email: [email protected]
pass: asdqwe123
Participant
email: [email protected]
pass: asdqwe123

Credits

  1. AngularJS Seed
  2. @satchamo for Crossword-Generator package