User:Oleksandr dubenko/GSoC2017/Project
Online Geometry Viewer Update
Contents
Personal Info
Name: Oleksandr Dubenko
Email: odybenko@gmail.com
IRC: sniok
Phone: +48577173100
Brief Summary
This project aims to improve Online Geometry Viewer in different ways: UI update, code quality and improved model importing.
Detailed summary
User Interface Developing and applying new style Remake feed view Add simple model view Remake upload view Improve advanced model view Code structure Use meteor’s recommended code structure Configure ESLint Add comments (JSDoc) Model importing Import .obj with colors Add support for .obj upload
User Interface
Developing and applying new style
Develop and user new consistent style. OGV’s UI have a lot of room for improvements. I want to i mprove and remake some parts of user interface to create the best user experience.
Remake feed view
Current profile and feed view should be improved. Most of it needs to be remade. Improve simple view for displaying user feed. Simple profile card on the left, actual feed in the middle, and recommended users on the right (not shown). This view will be same for profile.
Add simple model view
Currently you can’t quickly preview model, download and leave comment. Proposed view provides simple interactive preview of the model, information about model and comments.
Remake upload view
Currently after selecting the file from computer it shows simultaneously progress bar and editing view for model info which may be confusing. Separating all steps of model upload and showing current step at the top will improve user experience. Remake upload process into three steps: Upload -> File processing -> Editing and saving. Generate model preview at this step.
Improve advanced model view
Right now model view doesn’t provide scene settings. It has threejs view, download, social buttons and color settings view. In this view user can interact with model in full window mode, browse model tree ( .g files only ) and change scene settings. Current model view Proposed model view
Code structure
Use meteor’s recommended code structure
Since last summer I've been working on restructuring code to match Meteor's recommended structure. It still needs work. Final goal is breaking everything in modules to leverage Meteor's support of ES2015 modules.
Configure ESLint
ESLint was added but a lot of rules was turned off. Some work required here.
Add comments (JSDoc)
Also code lacks a lot of comments. I plan to comment as much as possible using JSDoc standard. And if it makes sense to auto generate documentation using JSDoc.
Model importing
Import .obj with colors
Use patched g-obj converter ( patch link) and import .g files with colors using generated .mtl file.
Add support for .obj upload
Add support for uploading .obj ( and .mtl ) files.
Short bio
I'm studying Computer Science, I've been participating in last year's Summer of Code as a student and Google Code-In as a mentor. I've been tinkering with OGV and have experience in JavaScript and Web Development and I think I have skills to complete this project.
Milestones
Bonding period Discuss project and make more design sketches 1 - 6 weeks Create new style Update and create all planned views Add .obj and .g color importing 7 - 9 weeks Code structure ESLint 10 - 11 weeks Fix bugs Add comments 12 weeks Clean up, test
Time availability
I have my finals week begin 22.06.2017 until 05.07.2017 that could limit my availability. After finals I’ll be available 40+ hours per week.
Patch
This is my work on OGV since last summer. github