A Web Application designed to manage clients, tickets and bills, with interaction between provider and clients.
Go to file
2016-02-01 02:37:12 +01:00
app fix Client#last_view 2016-02-01 02:37:12 +01:00
bin Initial commit 2015-06-04 02:42:24 +02:00
config finish ticket thread 2016-01-31 12:01:47 +01:00
db update tickets 2016-01-31 02:22:11 +01:00
lib Initial commit 2015-06-04 02:42:24 +02:00
log Initial commit 2015-06-04 02:42:24 +02:00
public Initial commit 2015-06-04 02:42:24 +02:00
test fix comment, implementation 2015-07-25 22:30:19 +02:00
vendor/assets Initial commit 2015-06-04 02:42:24 +02:00
.gitignore update gitignore for vim 2015-07-28 01:20:11 +02:00
config.ru Initial commit 2015-06-04 02:42:24 +02:00
doc.sh update doc script 2015-07-23 18:59:23 +02:00
Gemfile add autocompletion on contact and client id 2016-01-30 23:01:57 +01:00
Gemfile.lock add autocompletion on contact and client id 2016-01-30 23:01:57 +01:00
License update License with name 2015-07-25 03:27:54 +02:00
RailsMinidoc.md update readme and rails minidoc 2015-07-16 21:53:01 +02:00
Rakefile Initial commit 2015-06-04 02:42:24 +02:00
README.md update tickets 2016-01-31 02:22:11 +01:00

Project Presentation

Morning Peak is a modern and OpenSource Web Application. It has been designed to manage clients, bills, and issues for little and medium compagnies.

Dashboard Desktop view

There is a lot of CRM on the web. Some of them are web application. Some of them are open source. Some of them are modern. But, I never see any of them grouping the 3. It is why I started to develop this application. To improve my skills, my knowledges, and to use it.

I want a simple application, that I understand, and that I need. By simple, I mean:

  • No tasks, no reports, no chat. I want an application to do ONE thing, manage my clients, and it must do it clearly, and good.
  • A pluggable application, with many REST API. Because tasks and reports are usefull.
  • Generic items. I prefere ONE kind of Bills + Tags than 4 ou 5 kinds of Bills (for example).
Tickets Desktop view

Summary

  1. Installation
  2. Requirements
  3. Initialization
  4. Configuration
  5. First start
  6. Contributions
  7. Contributors
  8. How to contribute
  9. License
  10. Architecture
  11. Modelisation

1. Installation

1.1. Requirements

  • Ruby 2.0 or greater.
  • Postgresql server 9 or greater running with creditentials.

1.2. Initialization

Start by pasting this script in your shell:

cd MorningPeak/
gem install bundler
bundle install
cp config/database.yml.example config/database.yml
edit config/database.yml	# Configure your database connection first
rake db:create
rake db:migrate
rake db:seed				# will generate default data. Not on production ;)

1.3. Configuration

  • You can create a file .env to save your locals cvars without pollute your global env.
  • You can also create .env.production etc. for environement specifics cvars
  • A .env file looks like:
COMPANY: "Yolo production"
LOCALE: fr
...
  • The application's specifics cvars are :
    • COMPANY

1.4. First start

When you done with the configuration of the database (editing config/database.yml), you can run the server by the following command :

rails s		# "-b 0.0.0.0 -p 80" to test on internet :)

The server will be accessible via localhost:3000

Default creditentials are generated in the seed:

user> login: user@client.com , password: user2015
admin> login: admin@admin.admin , password: wir2015

Checkout for rails minidoc for a resume of rails.

2. Contributions

2.1. Contributors

  • Arthur Poulet : main developper, upstream (poulet_a) Look at this cute face

2.2. How to contribute ?

You can contribute to this project by Merge Request on the gitlab repository here. The best pratices are to create short commits, and short Merge Requests. Respect the git commit nomage convention as possible with:

  • title
  • description
  • concerned issues with "#id"

We accept any kind of work : translations, bug fix, additionnal features, optimizations, documentation, etc.

Don't be afraid !

2.3. License

see the license in the License file.

It is under:

GNU GENERAL PUBLIC LICENSE

3. Architecture

3.1 Modelisation

Creation and belongs

  • User has a Client (which is created when the user is created)
  • Client has many Contacts and Bills
  • User/Admin has many Tickets and Comments

Permissions

  • Admin can Comment, Read, Edit, Delete, and Create everything
  • User can open Ticket, Anwser and Close them.
  • User can Read every Bills wich is associated to him
  • User can not read his client informations (like notes, ...)