Skip to content

vedantshetty/Consulytics

Repository files navigation

Consulytics

App for freelancers and consultants streamline consultation sessions. Consulytics provides a portal for your clients to schedule and pay for consultation sessions

Can be accessed at https://consulytics.herokuapp.com/

Table of Contents

Features

  • See all your upcoming sessions in a simple calender or list view
  • Clients can log-in to keep track of all their upcomming consultations
  • Add comments and meeting notes to keep track of the important stuff
  • Stripe integration allows clients to pay for the meeting directly inside the app itself
  • Send a confirmation and reminder emails to the client just before the meeting

Layout

Sign-up Page

Login/Signup Page

  • Lets the users Sign-Up/ Sign-In
  • Users need to be logged in to be able to schedule meetings

Dashboard

Regular Dashboard

  • The calender dashboard is the first thing the users sees when they log-in

Admin Dashboard

  • The calender only shows appointments relevant to the user but the admin can see all the meetings Admin Dashboard

List View

  • By selecting the tab at the top you can also choose to view the meetings in a list view Meeting In List View

See an Individual Meeting

  • Each meeting has a show page which displays the start times and end times for the meeting.

  • You can also write some of your thoughts and notes for the meeting here. We use the trix gem to generate a text editor for adding details to the meetings

  • The admin also has the ability to cancel the meeting session through this page Single_Meeting

  • The meeting show page uses AJAX to update the comments in real time. When users submit a comment it is automatically displayed without having to refresh the page. Dynamic Meeting Update

Scheduling A New Consultation Session

New Consulation Form

  • Client's can schedule a new meeting right from within the app
  • Creating a new meeting also sends an email to the client about the meeting they just scheduled at their registered email ID

New Consulation Email

Client/User list

  • In addition to the above features the admin can view all his clients along with the upcoming sessions with them on a single page
  • The admin can also delete/fire a particular client thus cancelling all sessions with them Users List

Setup

  1. cd to the directory you want to save the code
  2. run git clone git@github.com:vedantshetty/Consulytics.git
  3. cd to the project directory
  4. Make sure you have redis installed
    • run redis-server in the terminal
    • If you don't have redis install then do so by using the guide
  5. run gem install foreman
    • Make sure to not install foreman from the gem file
  6. bundle install
  7. Setup Stripe Payments
    • Get your public and secret key from stripe( link to keys)
    • Open the credentials file by typing
Value In Code Text Editor
EDITOR='subl --wait' bin/rails credentials:edit Sublime Text
EDITOR='code --wait' bin/rails credentials:edit VSCode
EDITOR='gedit --wait' bin/rails credentials:edit Gedit

8 Paste the following in your credentials file

  • stripe_publishable_key: <YOUR_KEY_HERE>
  • stripe_secret_key: < YOUR_KEY_HERE>
  1. foreman start

Gems

  1. Simple Calender
  2. Stripe API
  3. TO-DO: SendGrid
  4. Tailwind CSS
  5. Tailwind Template by Andy Leverenz
  6. Redis
  7. Sidekiq
  8. Trix by Basecamp

To-Do

  • Allow 'drag-dropping' files to meeting notes
  • Use a more intuitive date-time picker
  • Refactor CSS for tailwindCSS 1.0
  • Integrate SendGrid
  • Refactor UI
  • Improve text on home page

Thanks

  1. Undraw for illustrations
  2. Jlever for guide