An opensource reef tank controller based on Raspberry Pi
Clone or download
zekth and ranjib Forcing positive and scope related inputs (#641)
* Forcing positive and scope related inputs

* ensuring log are well initialized to be displayed

* fixing console statement and unecessary try catch
Latest commit 4b29fbe Nov 16, 2018
Failed to load latest commit information.
assets Fix component-selector to appear over footer (#633) Nov 4, 2018
build add reset password command (#457) Jul 20, 2018
commands gofmt -s formatting fix (check go report) (#599) Oct 14, 2018
controller move jack specific libs to connectors package. support pwm percentage… Nov 8, 2018
jsx Forcing positive and scope related inputs (#641) Nov 16, 2018
test Add Light Name to edit form (#626) Oct 30, 2018
.babelrc Collapse menu on navigate (#574) Sep 30, 2018
.editorconfig UI improvement (#540) Sep 13, 2018
.eslintignore Cleaning Build environment for UI (#512) Sep 1, 2018
.eslintrc.js Unit tests (#567) Sep 25, 2018
.gitignore Win support (#550) Oct 2, 2018
.prettierrc UI fixes (#542) Sep 14, 2018
.travis.yml (bug)integrate with ph subsystem (#544) Sep 14, 2018 Code of conduct (#162) Aug 5, 2017 fix readme (#384) May 30, 2018
Dockerfile Style ui login (#385) Jun 5, 2018
Gemfile (feat)add debian packaging gears (#88) Jan 4, 2017
Gemfile.lock update rubygems (#514) Sep 1, 2018
LICENSE.txt docs (#19) Jul 5, 2016
Makefile Log center (#583) Oct 7, 2018 add michael and vince as maintainers Sep 14, 2018
images add image browser in camera sub system Feb 3, 2018
package-lock.json Add notifications to ATO UI (#616) Oct 24, 2018
package.json Bug fixes (#604) Oct 15, 2018
sass-lint.yml UI improvement + CI (#538) Sep 11, 2018
webpack.config.js (chore)Ignore api error when issuing reload (#624) Oct 27, 2018


An open source reef tank controller based on Raspberry Pi

GitHub release Build Status Coverage Status Go Report Card License GoDoc


reef-pi is an opensource reef tank controller based on Raspberry Pi. This is the software repository for reef-pi. If you are trying to build a physical controller to automate your reef tank, use reef-pi website. If you are new to reef keeping and want to know about the hobby use one of the online forums such as reef2reef or nano-reef(for smaller reef tanks).

reef-pi is an award winning, modular, do it yourself (DIY) project that aims to provide a hackable, affordable reef tank automation platform using easy to learn electronics. Apart from Raspberry Pi, reef-pi uses a handful of additional electronics boards from adafruit, a open hardware, community-focused electronics company. reef-pi is under active development. Follow reef2reef thread if you want to stay up to date with reef-pi development. Use the build guides on reef-pi website if you just want to build a reef tank controller based on reef-pi. We use slack for developer communication. Click here to join reef-pi slack channel. reef-pi development environment setup documentation can be found here.


  • Web browser based user interface
  • On-demand & timer based control of equipment
  • Sunrise to sunset LED lighting automation
  • Temperature monitoring and control
  • pH monitoring
  • Dosing pump (peristaltic pumps) control
  • Auto Top off
  • Email alerts, charts, and dashboard capabilities. based telemetry for monitoring.
  • On-demand or automatic tank photo capture with google drive upload using pi camera



reef-pi would not be possible without these awesome things:

  • Raspberry Pi Foundation
  • for all peripheral boards, tutorials.
  • go, the programming language that powers reef-pi non-ui parts.
  • react, a javascript framework used by reef-pi user interface.
  • github, the social coding platform that provide reef-pi code, website and release package hosting.
  • embd, go based IoT library used by reef-pi.
  • reef2reef, worlds largets reef tank user forum where reef-pi's original discussion thread is hosted.
  • travis ci for continuous integration service


Copyright:: Copyright (c) 2018 Ranjib Dey. License:: Apache License, Version 2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.