SourceLair Blog

  • Hello Node.js

    JavaScript - and Node.js in particular - is getting a lot of attention lately. Be it the nice threading model, the ease of adoption or the ability to have full stack developers just coding against JavaScript, Node.js is here to stay.

    Removing friction from your development workflow is our first priority and we couldn't ignore the fact that you might be using different frameworks to code.

    That's why, today onwards SourceLair sports Node.js out of the box. We did our best to make Node.js support framework agnostic, so that you can easily code on your favorite framework with the least effort. You can configure your workspace accordingly and enjoy the awesome SourceLair sauce.

    Bootstrapping at a glance

    Bootstrapping your Node.js project is as easy as counting to 4 - the number clicks needed to create it. When you create your project in SourceLair, by default you'll have an Express.js project up and running. If you want to install a different framework, like Sails.js, koa, hapi, etc, you can easily install it using our npm integration.

    Using your scripts at SourceLair

    SourceLair does not only support Node.js, it understands it. When you code your project in SourceLair, the scripts section in your package.json file will be populated automatically in Command Palette. Then, you'll be able to open Command Palette using Ctrl + Shift + P (or Cmd + Shift + P on a Mac), type "scripts" to list the all or your script's name and then run it. It's that easy!

    Node.js support in SourceLair

    What are you waiting for? Your next Node.js project awaits you at www.sourcelair.com, move on and hack the heck out of it!

  • Introducing MySQL servers

    Every modern web application is backed by at least one database and thus, databases are components that are tightly coupled with every developer's workflow.

    This is a friction that we want to take away from every developer and today we're stunned to introduce MySQL database support in SourceLair. MySQL is one of the most common databases out in the wild and is one more step towards providing our users with the tools they need for building great applications.

    MySQL Databases in SourceLair

    Bootstrapping a database

    Starting today, each time you create a new project in SourceLair, you can select to connect a MySQL database to your project. Seconds later when your project is created, you can easily access your database from our fully featured Linux Terminal or directly from your web application and enjoy your secure, isolated database.

    If you already have a project in SourceLair, you can of course take advantage of this great new feature without the need to create a new project. Just head to your project settings and select "Connect a database" option. Your database will be up and running in a glance.

    Security

    Your database user and password is predefined, but you can easily change them by connecting to your database. Apart from that, we have made sure you have one more layer of security by isolating your database and making it available to your project only. This means that neither another SourceLair user or another computer can directly hit your database, ensuring that your data will be safe and making you comfortable to test your applications with any dataset you want.

    Availability

    Databases are available to everyone. You don't need to have a SourceLair Pro subscription to create a database and since we're developers too, we know that we don't buy unless we taste.

    That's why you can easily create your database for free, experiment with it for a month and get billed afterwards only if you like it - no strings attached!

    Enough said, just head to www.sourcelair.com, create and enjoy your new MySQL database.

  • Introducing credit card payments

    Starting today we are giving our users the option to upgrade to SourceLair Pro using the payment method of their choice; credit card or PayPal account.

    In order to achieve the best user experience possible we utilized Braintree and its awesome integration with PayPal. Braintree lets us provide an amazing payment experience, while storing no credit card information in our servers.

    Payment method screen

    The flow is quite simple. Existing users can enter a new payment method and upgrade their plan either by clicking the "Upgrade" (1up) button in the sidebar or by going to their "Billing Settings" in the control panel. New users that want to sign up straight for SourceLair Pro will be guided through the whole process by just choosing "Pro" as their preferred plan during the sing up process.

    Sign into www.sourcelair.com, enter your preferred payment method and upgrade to Pro with a single click!

  • Develop your Flask applications - One drop at a time

    Today, we're glad to introduce the addition of one more framework to the SourceLair family, Flask. Flask is the continuation of our love for Python web frameworks. From now on, you can select the new Flask project type when you create or clone a new project in SourceLair and you'll be able to play with it within seconds.

    Flask Logo

    What is Flask?

    Copying from the official website, Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions.

    Flask can do a lot of things for a microframework. In SourceLair, we've coded a couple of internal services in Flask - making this our second favorite framework after Django. It gives simplicity and versatility, by defining a very nice routing and request/response handling mechanism, while leaving it up to you to select anything, from which ORM you'll use for your database, to the way your URLs will be constructed.

    Why Flask?

    Flask has been one of the most wanted frameworks by you, our users, and one that we use a lot internally at SourceLair. This made it our number one choice to be supported in our platform - we hope you'll love the support as much as we do!

    Starting your Flask application in no time

    To start your Flask application in SourceLair, simple create a new project from the "+" icon of the sidebar, choose Flask and your server will be up and running within seconds

    So, can I just clone my application in SourceLair and it'll work?

    The simple answer is yes. All you have to do is clone your project and it'll work! There are some things that we can't always do for you automatically though, so you have to make sure the following preconditions exist:

    1. Your application binds to 0.0.0.0
      • If not, just run your application with: app.run(debug=True, host='0.0.0.0')
    2. Your application is listening to port 5000, which is the default one
      • If you've changed the default port, you can switch back to the default one by just omitting the port from the run command
    3. your application's server file is called server.py
      • If you've named it anything else, you can update it from your project’s settings, accessible from the gear icon next to your project's name
    4. you're awesome - we know you are :)

    Also, if you need any libraries, you can easily install them using using pip.

    Why don't you support all frameworks?

    This is an interesting question and while it has nothing to do with Flask, I'd like to shed some light in here. Supporting multiple frameworks in SourceLair is extremely easy, the hard thing is to make them play nicely and provide first class support. That's why we make sure that both of these are true before adding any more frameworks.

    If you'd like to see another framework added in SourceLair though, don't hesitate to drop us a line at support@sourcelair.com and we'll be more than happy for it to be the next one we'll add!

  • Heroku toolbelt and mercurial deployment

    As you may have noticed, Heroku toolbelt is pre-installed in our images and you can use the Heroku commands from your SourceLair terminal.

    To further facilitate your flow, we added some of the basic Heroku commands into the Command Palette. The commands added are the following:

    heroku commands

    A typical workflow would be like this:

    • Start with Heroku: Login. You'll have to do this just once, to connect your SourceLair account to your Heroku account.
    • Next add your SSH keys to Heroku with Heroku: Add SSH keys. This has to be done, in order to be able to deploy. You can also add your SourceLair SSH keys manually from the Heroku UI.
    • Create a new Heroku application with Heroku:Create or add in your repo the Heroku remote of an existing application by using Heroku: Add remote.

    You are now ready to work on your heroku application. Anytime you want, you can deploy your application with Heroku: Deploy.

    As an added bonus, the commands of the Command Palette will also work for Mercurial projects! By utilizing the hg-git mercurial plugin, SourceLair let's you push your hg repository to a git server (like heroku in this case). Specifically, the Heroku: Create and the Heroku: Add remote commands add the Heroku remote after converting it into an hg-git plugin compatible form that enables mercurial to push into a git server.

    Go to www.sourcelair.com to try out the flow of developing and deploying your Heroku application in SourceLair.