neptune is a simple web application to create and send invoices, receive payments, manage clients and companies. It generates reports of Item sales, payments, and collected revenues. It supports multi languages and multi currencies. This application is developed in Ruby on Rails v6.0.2.2. and Ruby v2.7.1. This document describes Neptune application setup on Ubuntu 14.04 LTS machine.
- Attractive, responsive and adaptive user interface
- A nice looking dashboard with graph and key metrics
- Create and send invoices to your clients
- Recurring invoices
- Export invoices to PDF
- Create and send estimates to your clients
- Convert estimate to invoice
- Export estimates to PDF
- Receive payments against sent invoices
- Partial payments tracking
- Receive payments through Paypal and credit card
- Filters for listing pages
- Full text search feature using elastic search
- Time Tracking for running projects
- Generate invoice from project log hours
- Manage billing for your multiple sister companies under one account
- Import data from Freshbooks and QuickBooks
- Reports like
Payments Collected
,Aged Accounts Receivable
,Revenue By Client
,Items Sales
and more to come - Customer portal
Try Demo here
MySql is an open-source relational database management system. Run the following command to install database:
sudo apt-get install mysql-server mysql-client libmysqlclient-dev
Git is version control system we used for OSB. Run the following command to install git.
sudo apt-get install git
Run the following command to install ruby dependencies:
sudo apt-get update
sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev libncurses5-dev automake libtool bison libffi-dev imagemagick libmagickcore-dev libmagickwand-dev libicu-dev
You may need access to dependent pecl libraries, most which can be found by
sudo add-apt-repository ppa:ondrej/php
Run the following commands to install stable version:
curl -L https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
rvm install 2.7.1
rvm use 2.7.1 --default
Bundler is a tool that allows you to install multiple gem versions, run this command to install bundler:
gem install bundler
To clone project code from GitHub, give your GitHub account credential for authentication while cloning project.
git clone https://github.com/conexoesinfinito/neptune
cd neptune
bundle install
yarn install
Copy config/config.yml.copy to config/config.yml to set your configurations.
Edit config/config.yml with your own paypal settings:
paypal:
signature: YOUR_PAYPAL_SIGNATURE
business: YOUR_PAYPAL_BUSINESS
Edit config/config.yml with your own application settings:
app_host: APP_HOST_HERE # e.g. neptune.mydomain.com
app_protocol: http
Using following command in terminal to get path of wkhtmltopdf library path that is already installed on system.
which wkhtmltopdf
Edit config/config.yml with your own application wkhtmltopdf path.
wkhtmltopdf_path: YOUR_WKHTMLTOPDF_PATH
To make smtp_settings, go to settings, open a company edit form by clicking on a company and provide your smtp details in Mail Config section.
Edit config/config.yml with your own QuickBooksApp's oauth_consumer_key and oauth_consumer_secret.
quickbooks:
# QuickBooksApp's account key and secret
consumer_key: YOUR_QUICKBOOKS_APP_CLIENT_ID
consumer_secret: YOUR_QUICKBOOKS_APP_CLIENT_SECRET
Run following command on terminal to generate secret key
rake secret
copy this (newly generated) secret key from terminal and past it to the value of encryption_key in config.yml file.
encryption_key: ENTER-YOUR-ENCRYPTED-KEY-HERE
Copy config/database.yml.copy to config/database.yml and set your mysql username/password. After that run following command from terminal to create MySQL database specified in database.yml file.
rails db:create
rails db:migrate
Loading default values in database
rails db:seed
You need to start delayed_job for email delivery and other background tasks required for properly functionality of Neptune-lite by using following command
RAILS_ENV=development bin/delayed_job start
Your application is ready to use. Run rails server using following command:
rails server
and use your application in browser by typing in url: localhost:3000
You can also configure Apache, Nginx or any other web/application server of your choice to execute Neptune-lite in production mode.
Once you successfully configured Neptune-lite, you can use the below credentials to login.
Email: admin@neptune.ao
password: neptune2018
You can immediately change the credentials once you successfully logged in.
When a customer receive invoice/estimate through email, he will also receive a login link to see all of his invoices. By visiting that url he can login to his account or can create his account if he don't have one.