# The Well-Automated Arduino Library

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/050/299/medium800/maker_business_Tessa-Pride.png?1516308275)

Writing software is like gardening - the flowers are beautiful but you're going to spend a lot of time weeding! Except instead of weeding, its keeping up to date with new frameworks, operating systems and dependancies. It's a ton of work! So why not make it easy on your self with automation?

In this guide we'll go through how to use [GitHub](https://github.com/) (a free service for storing source code) + [Doxygen](http://doxygen.org) ( a free documentation standard/parser) + [TravisCI.org](http://TravisCI.org) (a free service for continuous integration/testing) To automatically document and test your code.

_In specific_, we'll be showing how to automate wide-range compilation tests for an Arduino library to make sure that updates to the Arduino IDE, language, and board support packages don't end up breaking builds.

_In general_, the same steps can be used for any codebase, including every-day source code projects - Arduino and otherwise! (But, it's really good for Arduino because we have scripts that do a lot of work for you already written)

This guide doesn't teach you how to write code, or how to write a library. But it will show you how to make your existing libraries live long fruitful lives as they age!

### 

Yep, this guide is how to do it using only free services for open-source software

### 

Yep, this guide is how to do it using only the techniques I know how to use

### 

Yep, this guide is how to do it without having to host anything on your own server

- [Next Page](https://learn.adafruit.com/the-well-automated-arduino-library/repository.md)

## Featured Products

### Arduino - Skill badge, iron-on patch

[Arduino - Skill badge, iron-on patch](https://www.adafruit.com/product/1300)
Arduino! You learned how to program and use the Arduino Microcontroller board. Adafruit offers a fun and exciting "badges" of achievement for electronics, science and engineering. We believe everyone should be able to be rewarded for learning a useful skill, a badge is just one of...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/1300)
[Related Guides to the Product](https://learn.adafruit.com/products/1300/guides)
### Micro-controllers - Skill badge, iron-on patch

[Micro-controllers - Skill badge, iron-on patch](https://www.adafruit.com/product/484)
You are learning micro-controllers! From Arduino, Netduino, Propeller, PIC, ARM and beyond! Adafruit offers a fun and exciting "badges" of achievement for electronics, science and engineering. We believe everyone should be able to be rewarded for learning a useful skill, a badge is...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/484)
[Related Guides to the Product](https://learn.adafruit.com/products/484/guides)
### Micro-controllers - Sticker!

[Micro-controllers - Sticker!](https://www.adafruit.com/product/689)
You are learning micro-controllers! From Arduino, Netduino, Propeller, PIC, ARM and beyond! Adafruit offers a fun and exciting stickers to celebrate achievement for electronics, science and engineering. We believe everyone should be able to be rewarded for learning a useful skill, a badge is...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/689)
[Related Guides to the Product](https://learn.adafruit.com/products/689/guides)

## Related Guides

- [Adafruit INA3221 Breakout](https://learn.adafruit.com/adafruit-ina3221-breakout.md)
- [Adafruit RP2040 Prop-Maker Feather](https://learn.adafruit.com/adafruit-rp2040-prop-maker-feather.md)
- [Adafruit USB Host BFF](https://learn.adafruit.com/adafruit-usb-host-bff.md)
- [Two Player Game System for PyGamer and RFM69HCW Radio Wing](https://learn.adafruit.com/two-player-game-system-for-pygamer-and-rfm69hcw-radio-wing.md)
- [Adafruit High Power Infrared LED Emitter](https://learn.adafruit.com/adafruit-high-power-infrared-led-emitter.md)
- [Adafruit TSSP77038 38KHz Infrared IR Demodulator Breakout](https://learn.adafruit.com/adafruit-tssp77038-38khz-infrared-ir-demodulator-breakout.md)
- [Playing Gamebuino META Games on Arcada](https://learn.adafruit.com/playing-gamebuino-meta-games-on-arcada.md)
- [Introducing ItsyBitsy 32u4](https://learn.adafruit.com/introducting-itsy-bitsy-32u4.md)
- [Proper Debugging of ATSAMD21 Processors](https://learn.adafruit.com/proper-step-debugging-atsamd21-arduino-zero-m0.md)
- [Commodore 64 - The Most Popular Retro Computer of All Time](https://learn.adafruit.com/commodore-64-retro-guide.md)
- [Adafruit Hallowing M4](https://learn.adafruit.com/adafruit-hallowing-m4.md)
- [Adafruit PCF8575 I2C 16 GPIO Expander Breakout](https://learn.adafruit.com/adafruit-pcf8575.md)
- [Adafruit BMP580, BMP581, and BMP585 - Temperature and Pressure Sensor](https://learn.adafruit.com/adafruit-bmp580-bmp581-and-bmp585-temperature-and-pressure-sensor.md)
- [Adafruit STEMMA Analog SPDT Switch](https://learn.adafruit.com/adafruit-stemma-analog-spdt-switch.md)
- [Adafruit Feather M4 Express](https://learn.adafruit.com/adafruit-feather-m4-express-atsamd51.md)
