jielabs / startup

The documents and Vagrant files to setup a full-stack development environment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

startup

###Objective:

  • The documentation of setting up a full-stack collaborative development environment for a software project.
  • Vagrant files to install essential tools in virtualbox.

###What do you need:

  • Dev machines, Operating systems
  • Domains
  • Servers
    • Virtual Private Server (VPS)
    • Cloud computing platform
  • Development tools
    • Langauge
      • C++, Java, Python, etc.
    • Development tool
      • make, maven, pybuilder, virtualenv, lint, etc.
    • IDE
      • Vim, Emacs, Eclipse, XCode, Visual Studio, etc.
    • Framework, SDK, libraries
      • Django, Jquery, Node.js, Andriod SDK, Hadoop, Protobuf, Google Maps API, etc.
    • Databases
      • RDBM or NoSQL
    • System tools
      • Memcached, Redis, RabbitMQ, Vagrant, etc.
    • Web server
      • Nginx or Apache
  • Source code management system (SCM)
    • Git, Subversion
    • Code search
    • Code review
    • Code coverage
  • Project management software
    • Agile development management
      • Planning and scheduling
      • Issue tracking
    • Document management
      • Twiki, Google Docs
    • Comparison
  • Continuous integration
  • Deployment and Automation
    • Puppet, Chef, etc.

Self-hosted Solutions

The below lists my choice for self-hosted development platform.

Operating systems, virtual machines and cloud

  • Ubuntu 14.04 LTS
    • A popular Linux distribution
  • Virtualbox
    • Free VM software for all major platforms
  • Vagrant
    • Vagrant allows you to share the vm images
  • Virtual Private Server
    • DigitalOcean
      • Easy to use, friendly for developers, as cheap as $5/month
    • Linode
      • A leading VPS company.

Development tools

  • Editor and IDE
    • Vim, Emacs, Eclipse
  • Language
    • Python, C++, R
  • Serialization
  • Vagrant

Source code management system

Continuous Integration

  • Jenkins
    • A popular CI tool. Easy to install and use.

Cloud-based solution:

About

The documents and Vagrant files to setup a full-stack development environment

License:MIT License