A Sublime Plugin, With Backend Service In Bottle, and Going Live Using OpenShift
Dinesh Kumar (~dineshkumar-cse) |
1
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
Speaker Links:
References: Why Do We Need REST Web Services