A Sublime Plugin, With Backend Service In Bottle, and Going Live Using OpenShift

Dinesh Kumar (~dineshkumar-cse)


1

Vote

Description:

In this session,

We'll create a Sublime Plugin which shares data, eg: Share code snippet with others. Sublime Plugin itself cannot have data (No Storage's associated with it, we have to store it in server so that anyone can access it), So we'll also create a service which saves/exposes the data, and the plugin will use the service.

Developing Backend Service (REST) & Hosting in OpenShift

  • REST Service convention and need of it
  • Creating REST Service with python bottle (microframework)
  • Integrating service with MongoDB (why NoSql DataBase is cool)
  • Introduction to OpenShift and its deployment Process
  • Deploying to OpenShift, Rewritting history in Git, as commit is the trigger for redeployment

Openshift is PAS, we can use other alternatives too like heroku or other. I've taken Openshift for workshop.

Creating Sublime Plugin

  • Sublime Plugin Development for Sublime Text Editor
  • Consume the service we built
  • How to publish our Plugin

Development Process

  • Using Git, Running sample Tests and Linters By Integrating with CI (Travis), Deploying it by other means like ansible

Prerequisites:

Software/Account

  • Insatll python3+ version, Install pyenv, virtualenv
  • git
  • An openshift account
  • Github account
  • Sublime Text Editor

Concept:

  • Basic understanding of python
  • Familiar with Git, pushing and pulling code
  • Basics of REST Service

Content URLs:

The Workshop is hands on, so its just code. I've shared two of plugin examples.

Github Links

Service Code: https://github.com/dineshkumar-cse/preferenceSyncService

Plugin Examples in Git: Preference Sync Plugin, ShareFile Plugin

Speaker Info:

Dinesh Kumar, Application Developer @ ThoughWorks Technologies India Pvt Ltd.

I've worked in different Tech Stack, Python, Java, Ruby etc, and have used many frameworks, built applications end to end. Have exposure to Test Driven Development, Continous Integration/Continous Delivery, Agile etc. I am experimenting with Auto Pilot Drone, also learning Machine Learning, functional Programming

Section: Web Development
Type: Workshops
Target Audience: Intermediate
Last Updated: