-
Notifications
You must be signed in to change notification settings - Fork 452
Development
This application uses Open Source components. You can find the source code of their open source projects along with license information below. We acknowledge and are grateful to these developers for their contributions to open source.
ChurchCRM is a fork of ChurchInfo, which is a fork from InfoCentral. Refer to the ChurchInfo and InfoCentral project sites for additional credits and history.
Steps
Install the following prerequisite applications:
Use either the GitHub Desktop Application, or the command line to get the ChurchCRM code onto your development machine:
-
GitHub Desktop
-
Command Line:
git clone https://github.com/ChurchCRM/CRM.git
Vagrant takes care of building a VM with the proper prerequisutes and other configuration as specified by the ChurchCRM Project maintainers. Specifically, we use Scotch box to provide a a quick LAMP stack in the Vagrant environment.
vagrant up
Vagrant creates a mapped directory from the source code (locally on your computer) to the virtualized web server.
This means that you can edit files directly on your machine, and the changes are live as soon as you reload the page.
Access the Project at http://192.168.33.10
User: Admin
Password: changeme
See https://github.com/scotch-io/scotch-box#database-access for connection info
DB: churchcrm
DB User: churchcrm
DB Password: churchcrm
- You can use a MySQL development platform, or your favorite IDE to access the ChurchCRM databases.
- As part of the vagrant development environment, MySQL is configured to listen on all interfaces, and the churchcrm user is allowed to login from any host.
- Navigate to the "Services" Node from the "Window" menu
- Right Click "Databases, " and select "New Connection"
- Choose the "MySQL" Connector.
- Enter "192.168.33.10" as the Database Host.
- Enter churchcrm for Database Name, Useranme, and Password. Your connection string should be as follows:
jdbc:mysql://192.168.33.10:3306/churchcrm?zeroDateTimeBehavior=convertToNull
- Click "Test Connection"
- You should now be able to browse the database schema and execute queries from the NetBeans IDE.
- All outbound email from ChurchCRM should be directed at the local instance of MailCatcher.
- MailCatcher prevents messages from actually being delivered over the Internet, but still allows you (as a developer) to see all of the headers and content of the messages
- The SMTP service listens on 127.0.0.1, port 1025 (You must manually configure your development instance of ChurchCRM to send mail to this address.)
- The Vagrant bootstrap.sh script will automatically start MailCatcher on all IP addresses owned by the Vagrant VM.
- You can view (in real time) the messages sent by ChurchCRM by opening http://192.168.33.10:1080 on the machine hosting the Vagrant environment
- Make changes to propel/schema.xml
- change dir to the project root or in vagrant /vagrant
- npm run orm-gen
- Node may be named incorrectly if installed from apt https://github.com/nodejs/node-v0.x-archive/issues/3911