GithubHelp home page GithubHelp logo

alexxnica / learningstore Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nokia/learningstore

0.0 2.0 0.0 32.26 MB

An application to manage trainings

License: BSD 3-Clause "New" or "Revised" License

JavaScript 86.30% HTML 2.04% CSS 11.66%

learningstore's Introduction

LearningStore

The Nokia Learning Store is an application that directs learners to today's hottest learning offers: products, technology and business skills.

The Learning Store eliminates the need for lengthy searches and multiple access points to find relevant learning resources. Clear, simple icons point users to key learning topics while a left menu bar specifies user groups and topics.

The Learning Store is one place to browse for all learning needs. A recognizable and understandable format patterned after today's most familiar on-line applications.

A live preview of the open source version is available (it is still under development) and can be compared to the production version of the Nokia Learning Store.

Technology

The store is architectured as a Single Page Application (SPA) so that there is no delay when browsing and searching the store.

It is developed in Javascript and relies on the popular React framework (the Facebook framework).

All the data are prepared through a backend process and loaded once in the application. This allows a fast and responsive user experience.

The data are structured in JSON files. A startup file, called store.json and one file per store. The JSON files are common to the web and mobile applications.

Store.json

The file contains an array where each entry describes a store. A store is represented by the following data: id, title, subtitle and url.

"id": "customer",
"title": "Customer Store",
"subtitle": "Access the best learning offers for today's products and technologies to help you achieve your business objectives.",
"url": "http://learningstore.nokia.com/customer",

Each entry describes also the home page of the store. The store home page includes: a carousel, a homepage section (usually below the carousel) and a menu.

Carousel

The carousel structure is an array that contains an image and one of url, id or html. Url points to any URL, id is the ID of a store item and html is a page that is displayed when the user clicks on the image of the carousel.

    "carousel": [
    {
        "img": "img/carousel-video-demo.jpg",
        "url": "https://www.youtube.com/embed/uSTzkzBNkXE"
    },
    {
        "img": "img/carousel-sr-prod-overviews.jpg",
        "id": "n.1477658737129"
    }]

Homepage

The homepage structure is an array that contains sections of featured store items.

    "homepage": [
    {
        "title": "Featured Technologies",
        "items": ["n.1472887445473", "n.1472887514849", "n.1472887540319", "n.1472887576282", "n.1472887595746", "n.1472887632557"]
    }]

title is the title of the section and items is the array of store items represented by their IDs.

Menu

The menu structure is an array describing the store menu.

    "menu": [
    {
        "title": "What's New",
        "id": "c.33"
    },
    {
        "title": "Professional Development",
        "category": true,
        "content":[
        {
            "title": "Personal Skills",
            "id": "c.25"
        },
        {
            "title": "Innovation & Change",
            "id": "n.1464255805872"
        },

A menu entry needs a title and either an item ID or a submenu (content). In addition, a menu entry can be regrouped into a category menu in order to save space.

Process flow

The standard process flow is the following:

App.js -> Home.js -> Store.js -> Item.js

App.js is the entry point of the application. Home.js displays the list of stores available. Store.js displays the homepage of the selected store and Item.js shows the details of a store item.

Content Edition

All the stores can be edited directly in a web browser. A set of keyboard shortcuts allows to create, modify, save, upload etc. store items. See Content Edition for more information.

learningstore's People

Contributors

gillesgerlinger avatar felixfuin avatar csatarigergely avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.