Giter Club home page Giter Club logo

modivle's Introduction

MODIVLE source

Application is hosted on github pages!

Overview

  • The app uses localstorage to manage state, allowing it to be deployed on github pages.
  • gulp is use as the build tool
  • react is used in the view layer.
  • browserify is used to package the various source files.
  • less is used to manage the stylesheets.

Running the app

This builds the various assets, starts a webserver in the root directory and opens localhost:8000.

$ gulp dev

It automatically watches for changes and rebuilds the assets.

Setting up the development environment

  1. Install gulp, browserify
  2. Install dependencies: npm install
  3. Run gulp dev (to start webserver).
  4. Run gulp min to generate minified assets for production.

See gulpfile.js for other tasks.

Sessions

The code for user sessions can be found in javascript/auth.js.

This file is included at the top of both welcome.html and index.html so that we don't download the rest of the page if we need to redirect the user to the correct location.

Contributions

  • Feedback, Bugs, Contributions are most welcomed!

modivle's People

Contributors

jcheng31 avatar tvaucher avatar xbili avatar ymichael avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

modivle's Issues

Announcement Support

what to keep/add/remove?

screenshot

Currently:

  • loads all announcements
  • shows title, author and date. (in a list view)
  • opens the first(latest) announce by default
  • click toggles open/close

caching support

announcements at the moment vary in size. for certain modules that use ivle announcements heavily, it huge. around 50kbs.. not feasible to store/cache on redis.. (probably worse for forums. :/) kiv

mobile scrolling

tested iscroll, not impressed. kiv. fixed headers support not great. to remain static for now...

dev and production views

currently the node environment is begin detected by an if-else.

to look into incorporating the views and layouts into the app.configure() part of the application.

hopefully making it easier to maintain.

multiple forums returned!

some modules have more than one forum.. some of these are private yet still returned. (empty of course.)

gzip static assets

maybe with nginx sitting in front (express 2.x ships with connect 1.x that does not support this)

new build process

rake or jake

  • pre-build checks (tests, jshint)
  • post build:
    • optimise images
    • minify assets

cleaner domain name?

thinking of deploying to a nicer domain name.

maybe when application reaches a nice stable point.

v1 target:
-speed comparable to ivle.
-functionality comparable to ivle workbin.
-better mobile access
-iron out cross browser quirks

tablet version?

hover events for the desktop version suck on the ipad. todo.

ivle cookies

actual ivle is screwing up the api requests from the client

Unified Styles

unify styles of:

  • announcement and workbin views
  • the disparity between mobile and desktop apps

keyboard shortcuts

  • tabs to navigate within the level of navisgation
  • character shortcuts
  • arrow keys

mobile landing page

port over existing landing page. (better yet, adapt the landing page to respond to browser width.)

mobile perf

takes a perceptible amount of time to render the backbone view. (unacceptible.)

  • tried zeptojs but not compatible with existing $ api.

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.