The best and worst thing about being a web developer is that the web is constantly changing. While this is exciting it also means that web developers must always be proactive about learning new techniques or programming languages, adapting to changes, and be willing and eager to accept new challenges. This could include tasks such as adapting existing frameworks to meet business requirements, testing a website to identify technical problems, or optimizing and scaling a site to better perform with the back-end infrastructure. We thought we would compile a comprehensive list of web development tools and resources that can help you be more productive, stay informed, and become a better developer.
Web Development Tools and Resources for 2017
A lot fo these web development tools below are ones we use at KeyCDN on a daily basis. We can’t include everything, but here are a couple of our favorites and other widely used ones. Hopefully, you find a new tool or resource that will aid you in your development workflow. Note: The tools and resources below are listed in no particular order.
- BackBoneJS: Give your JS app some backbone with models, views, collections, & events.
- jQuery UI: A curated set of user interface interactions, effects, widgets, and themes.
- jQuery Mobile: HTML5-based user interface system designed to make responsive web sites.
- Underscore.js: Functional programming helpers without extending any built-in objects.
- Lodash: A modern utility library delivering modularity, performance, & extras.
Front-end frameworks usually consist of a package that is made up of other files and folders, such as HTML, CSS, JavasScript, etc. There are also many stand-alone frameworks out there. We are a big fan of Boostrap and the main KeyCDN website is built on it. A solid framework can be an essential tool for front-end developers.
- Bootstrap: HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.
- Foundation: Family of responsive front-end frameworks that make it easy to design beautiful responsive websites, apps and emails that look amazing on any device.
- Semantic UI: Development framework that helps create beautiful, responsive layouts using human-friendly HTML.
- uikit: A lightweight and modular front-end framework for developing fast and powerful web interfaces.
Web Application Frameworks
A web application framework is a software framework designed to aid and alleviate some of the headache involved in the development of web applications and services. KeyCDN actually hosts a version of AngularJS, HTTP/2 and CORS enabled, that you can use in your projects completely free. See code below. Full documentation at angularcdn.com.
- Ruby: Ruby on Rails is a web-application framework that includes everything needed to create database-backed web applications, with the MVC pattern.
- AngularJS: Lets you extend HTML vocabulary for your web application. AngularJS is a framework, even though it’s much more lightweight and sometime referred to as a library.
- Ember.js: A framework for creating ambitious web applications.
- Express: Fast and minimalist web framework for Node.js.
- Django: High-level Python Web framework that encourages rapid development and clean, pragmatic design.
- ASP.net: Free, fully supported Web application framework that helps you create standards-based Web solutions.
- Laravel: A free, open-source PHP web application framework to build web applications on MVC pattern.
- Zend Framework 2: An open source framework for developing web applications and services using PHP.
- Phalcon: A full-stack PHP framework delivered as a C-extension.
- Symfony: A set of reusable PHP components and a web application framework.
- CakePHP: A popular PHP framework that makes building web applications simpler, faster and require less code.
- Flask: A microframework for Python based on Werkzeug and Jinja 2.
- CodeIgniter: Powerful and lightweight PHP framework built for developers who need a simple and elegant toolkit to create full-featured web applications.
Also make sure to check out KeyCDN’s framework integration guides to see how you can implement a CDN with the solutions mentioned above.
Task Runners / Package Managers
- Gulp: Keeps things simple and makes complex tasks manageable, while automating and enhancing your workflow.
Languages / Platforms
Behind all the web development tools is a language. A programming language is a formal constructed language designed to communicate with a computer and create programs in which you can control the behavior. And yes we realize some of these might not always be referred to as a language.
- PHP: Popular general-purpose scripting language that is especially suited to web development.
- HTML5: Markup language, the latest version of HTML and XHTML.
- Python: Programming language that lets you work quickly and integrate systems more effectively.
- Ruby: A dynamic, open source programming language with a focus on simplicity and productivity.
- Scala: Scala is a pure-bred object-oriented language allowing a gradual, easy migration to a more functional style.
- CSS3: Latest version of cascading style sheets used in front-end development of sites and applications.
- SQL: Stands for structured query language used with relational databases.
- Golang: Open source programming language that makes it easy to build simple, reliable, and efficient software.
- Rust: Systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.
- Elixir: Dynamic, functional language designed for building scalable and maintainable applications.
A database is a collection of information that is stored so that it can be retrieved, managed and updated.
- MySQL: One of the world’s most popular open source databases.
- MariaDB: Made by the original developers of MySQL. MariaDB is also becoming very popular as an open source database server.
- MongoDB: Next-generation database that lets you create applications never before possible.
- Redis: An open source, in-memory data structure store, used as database, cache and message broker.
- PostgreSQL: A powerful, open source object-relational database system.
A CSS preprocessor is basically a scripting language that extends CSS and then compiles it into regular CSS. Make sure to also check out or in-depth post on Sass vs Less.
- Sass: A very mature, stable, and powerful professional grade CSS extension.
- Less: As an extension to CSS that is also backwards compatible with CSS. This makes learning Less a breeze, and if in doubt, lets you fall back to vanilla CSS.
- Stylus: A new language, providing an efficient, dynamic, and expressive way to generate CSS. Supporting both an indented syntax and regular CSS style.
If you are just getting started with a CSS preprocessor you might want to make the transition easier by first using a 3rd party compiler, such as the ones below.
|Compiler||Sass Language||Less Language||Mac||Windows|
Text Editors / Code Editors
Whether you’re taking notes, coding, or writing markdown, a good text editor is a part of our daily lives!
- Atom: A text editor that’s modern, approachable, yet hackable to the core. One of our favorites!
- Sublime Text: A sophisticated text editor for code, markup and prose with great performance.
- Notepad++: A free source code editor which supports several programming languages running under the MS Windows environment.
- Visual Studio Code Beta: Code editing redefined and optimized for building and debugging modern web and cloud applications.
- TextMate: A code and markup editor for OS X.
- Coda 2: A fast, clean, and powerful text editor for OS X.
- WebStorm: Lightweight yet powerful IDE, perfectly equipped for complex client-side development and server-side development with Node.js.
- Vim: A highly configurable text editor built to enable efficient text editing.
- Emacs: An extensible, customizable text editor with built-in functions to aid in quick modifications of text and code.
Markdown is a markup language in plain text using an easy syntax that can then be converted to HTML on the fly. Note: This is different than a WYSIWYG editor. Markdown editors are sometimes referred to as the in-between WYSIWYG and simply writing code.
- StackEdit: A free online rich markdown editor.
- Dillinger: An online cloud-enabled, HTML5, buzzword-filled Markdown editor.
- Mou: Markdown editor for developers on Mac OS X.
- Texts: A rich editor for plain text. Windows and Mac OS X.
Some of the text editors we mentioned above also support markdown. For example, there is a markdown preview package for atom.
Almost every web developer, especially front-end developers will at some point or another need icons for their project. KeyCDN actually hosts a version of Font Awesome, HTTP/2 and CORS enabled, that you can use in your projects completely free. See code below. Full documentation at fontawesomecdn.com.
- Font Awesome: Scalable vector icons that can instantly be customized — size, color, drop shadow, and anything that can be done with the power of CSS.
- IconMonster: A free, high quality, monstrously big and continuously growing source of simple icons. One of our favorites!
- Icons8: An extensive list of highly customizable icons created by a single design team.
- IconFinder: Iconfinder provides beautiful icons to millions of designers and developers.
- Fontello: Tool to build custom fonts with icons.
Git Clients / Services
Git is a source code management system for software and web development known for distributed revision control. When working with teams, using a git client to push code changes from dev to production is a way to maintain the chaos and ensure things are tested so they don’t break your live web application or site.
- SourceTree: A free Git & Mercurial client for Windows or Mac. Atlassian also makes a pretty cool team Git client called Bitbucket.
- GitKraken (Beta): A free, intuitive, fast, and beautiful cross-platform Git client.
- Tower 2: Version control with Git – made easy. In a beautiful, efficient, and powerful app.
- GitHub Client: A seamless way to contribute to projects on GitHub and GitHub Enterprise.
- Gogs: A painless self-hosted Git service based on the Go language.
- GitLab: Host your private and public software projects for free.
Local Dev Environments
Depending upon what OS you are running or the computer you currently have access to, it might be necessary to launch a quick local dev environment. There are a lot of free utilities that bundle Apache, mySQL, phpmyAdmin, etc. all together. This can be a quick way to test something on your local machine. A lot of them even have portable versions.
- XAMPP: Completely free, easy to install Apache distribution containing MariaDB, PHP, and Perl.
- MAMP: Local server environment in a matter of seconds on OS X or Windows.
- WampServer: Windows web development environment. It allows you to create web applications with Apache2, PHP and a MySQL database.
- Vagrant: Create and configure lightweight, reproducible, and portable development environments.
- Laragon: A great fast and easy way to create an isolated dev environment on Windows. Includes Mysql, PHP Memcached, Redis, Apache, and awesome for working with your Laravel projects.
Diff checkers can help you compare differences between files and then merge the changes. A lot of this can be done from CLI, but sometimes it can be helpful to see a more visual representation.
- Diffchecker: Online diff tool to compare text differences between two text files. Great if you are on the go and quickly need to compare something.
- Beyond Compare: A program to compare files and folders using simple, powerful commands that focus on the differences you’re interested in and ignore those you’re not.
A lot of the free text editors we mentioned above also have plugins or extensions which allow you to diff or compare your files.
Code Sharing / Experimenting
There is always that time when you are on Skype or Google hangout with another developer and you want him or her to take a quick look at your code. There are great team tools for sharing code like Slack, but if they aren’t a member of your team there are some great quick alternatives. Remember not to share anything secure.
- codeshare: Share code in real-time with other developers.
- Dabblet: Interactive playground for quickly testing snippets of CSS and HTML code.
Every great development team needs a way to stay in touch, collaborate, and be productive. A lot of teams work remotely now. The team at KeyCDN is actually spread across many different continents. Tools like these below can help employees streamline their development workflow.
- Slack: Messaging app for teams that is on a mission to make your working life simpler, more pleasant, and more productive. One of our favorites, we use this at KeyCDN!
- Trello: Flexible and visual way to organize anything with anyone. We also use this as KeyCDN.
- Glip: Real-time messaging with integrated task management, video conferencing, shared calendars and more.
- Asana: Team collaboration tool for teams to track their work and results.
- Jira: Built for every member of your software team to plan, track, and release great software or web applications.
We all need inspiration at some point or another. For front-end developers especially, from time to time, it can be beneficial to check out what other people are doing. This can be a great source of inspiration, new ideas, and making sure your web application or site doesn’t fall behind the times.
- CodePen: Show off your latest creation and get feedback. Build a test case for that pesky bug. Find example design patterns and inspiration for your projects.
- Dribble: A community of designers sharing screenshots of their work, process, and projects.
Website Speed Test Tools
The speed of a website can be a critical factor to its success. Faster loading websites can benefit from higher SEO rankings, higher conversion rates, lower bounce rates, and a better overall user experience and engagement. It is important to take advantage of the many free tools available for testing website speed.
- Website Speed Test: A page speed test developed by KeyCDN that includes a waterfall breakdown and the website preview.
- Google PageSpeed Insights: PageSpeed Insights analyzes the content of a web page, then generates suggestions to make that page faster.
- Google Chrome DevTools: Set of web authoring and debugging tools built into Google Chrome.
- WebPageTest: Run a free website speed test from multiple locations around the globe using real browsers (IE and Chrome) and at real consumer connection speeds.
- Pingdom: Test the load time of that page, analyze it and find bottlenecks.
- GTmetrix: Gives you insight on how well your site loads and provides actionable recommendations on how to optimize it.
You can see a more in-depth list on our post about website speed test tools.
Web Development Communities
Every web developer has been there. They have a problem and what do they do? Well, they go to Google to find a quick answer. The web offers so much content right at our fingertips that it makes it easy to diagnose and troubleshoot problems when they arise. Check out a few good web development communities below.
- Stack Overflow: Community of 4.7 million programmers, just like you, helping each other.
- Front-end Front: A place where front-end developers can ask questions, share interesting links, and show their work to the rest of the community.
- Hashnode: Global community for software developers to connect and learn programming from each other.
- Refind: Community of founders, hackers, and designers who collect and share the best links on the web.
- Google+ Web Developers Group: Web developers, web designers, and web coding.
- Facebook WordPress Front-end Developers Group: WordPress Front End Developers is a group for devs to ask questions, share their work, discuss emerging trends, and collaborate.
- LinkedIn Web Design and Development Professionals Group: Networking and information sharing resource for professional Web Designers, Web Developers and Web Masters.
- LinkedIn Web Site Development Group: Website design & programming.
- LinkedIn PHP Developer Group: PHP, Mysql, Drupal, Joomla, Zend, Cake, MVC.
- LinkedIn WordPress Developers Group: WordPress Codex. Using WP as CMS and CMF.
- Sitepoint Forums: Web development discussion.
- /r/perfmatters: The #1 subreddit about web performance and web development.
- /r/webdev: What’s new for web developers.
Web Development Newsletters
- wdrl.info: A handcrafted, carefully selected list of web development related resources. Curated and published usually every week.
- webopsweekly.com: A weekly newsletter for Web developers focusing on web operations, infrastructure, deployment of apps, performance, and tooling, from the browser down to the metal.
- web tools weekly: A front-end development and web design newsletter with a focus on tools. Each issue features a brief tip or tutorial, followed by a weekly round-up of various apps, scripts, plugins, and other resources.
- freshbrewed.co: A weekly reading digest for front-end developers and UX designers.
- smashingmagazine.com: Smashing Magazine is an online magazine for professional web designers and developers. Useful tips and valuable resources, sent out every second Tuesday.
- front-end dev weekly: Front-end developer news, tools and inspiration hand-picked every week.
- friday front-end: Front-end development links tweeted daily, emailed weekly.
- /dev tips: Receive a developer tip, in the form of a gif, in your inbox each week.
And of course, you can subscribe to our newsletter if you haven’t already on the right hand side of this post.
As you can see there are hundreds of web development tools and resources available to help streamline your development workflow and hopefully aid you in being more productive. Again we can’t list every tool or resource, but if we forgot something important, feel free to let us know below in the comments.