Web Based Tool for Tracking Solar Permitting Requirements in The United States
Please see the wiki for additional documentaiton - https://github.com/solarpermit/solarpermit/wiki
There are various ways you can get involved at SolarPermit.org - from data to code updates, contribution drives the platform.
- Anyone can update jurisdictions right from their web browser. This helps things stay up-to-date and is the basis of SolarPermit as an information platform.
- If you have large amounts of data to submit, you can use our API to contribute while retaining all the benefits and recognition that is provided when using the web interface. See our https://github.com/solarpermit/solarpermit/wiki for more information.
- If you want to work with the complete dataset and would rather do so with an sql file instead of obtaining data via the API, please contact us at email@example.com and we can provide a recent database dump.
- Source Code
- If you'd like to make modifications to SolarPermit, simply fork the code here at github. Once you've tested your changes, create a merge request and the code changes will be reviewed for inclusion.
- This is especially helpful for bug reports and fixes. We appreciate help improving SolarPermit. Bug reports can be filed [https://github.com/solarpermit/solarpermit/issues](on github's issue tracker)
- Sharing Ideas and Feature Requests
- If you are looking to share general ideas, post to the https://solarpermit.org/forum/.
- If you have specific feature requests, please feel free to create a ticket [https://github.com/solarpermit/solarpermit/issues](on github's issue tracker)
Initial Source Release
We will be merging the previous development trunk here. If you would like to participate in development, please join us on github or start a conversation in our forums.
- Install Dependencies
- Apache 2
- MySQL Server, version 5.5 or newer 1. Install the mysql_json UDF 1. git submodule update --init (checks out the source code) 2. cd deps/mysql_json 3. make 4. make install
- Please See dependencies.txt 1. This file is written to be used with pip for easily handling python requirements - i.e. "pip install -r dependencies.txt"
- Optional Items 1. Closure JS compiler, for JS minification
- Setup Apache to allow vhosts
- Setup the specific vhost
- See apache/solarpermit_apache_inc.conf
- Replace "mydomain.com" with the domain that you want to use
- Lines 9, 35, 36
- Replace "/path/to/software" with the folder that contains this file
- Lines 37, 39, 44, 45, 46, 51, 52
- Replace "/path/to/this/vhost/logs" with the location of the folder you want to use for vhost specific logs. 1. make sure the user specified in the apache include has write privileges for this folder, and the log files. 2. I use "/path/to/software/logs" so that all my vhosts are separated
- Move apache/solarpermit_apache_inc.conf to your apache Includes folder
- Configure Software
- edit apache/django.wsgi 1. replace "/path/to/software" on line 3.
- Change settings... do not edit settings.py, use settings_local.py to override
- Configure Database
- CREATE DATABASE solarpermit CHARACTER SET utf8mb4 COLLATE utf8_unicode_ci;
- ./manage.py syncdb (if this fails due to a missing SQL table, run migrate website)
- Optionally import an SQL dump
- ./manage.py migrate website
- ./manage.py migrate tracking
- ./manage.py migrate compress_jinja
- Restart Apache
- Set up Cron jobs
- periodically run ./manage.py validate_answers -- this can be done every hour.
- there are other cron jobs, but omitting them will not prevent deployment.
Need help? Have questions?
IRC: #solarpermit on freenode