Giter Club home page Giter Club logo

tasktracker's Introduction

Task Tracker

Build Status Dependency Status Code Climate

Manage multiple projects, view tasks in a calendar, receive reminder emails for tasks due, assign project members to tasks, create templates for series of tasks, receive emails and updates as tasks and groups of tasks are completed, assign project specific tags to tasks, generate reports on task tags. Using Rails 5.1+ and Ruby 2.4+.

Installation

Prerequisites Install Guide: Instructions for installing prerequisites like Ruby, Git, JavaScript compiler, etc.

Once you have the prerequisites in place, you can proceed to install bundler which will handle most of the remaining dependencies.

gem install bundler

This readme assumes the following installation directory: /var/www/tasktracker

cd /var/www

git clone https://github.com/remomueller/tasktracker.git

cd tasktracker

bundle install

Install default configuration files for database connection, email server connection, server url, and application name.

ruby lib/initial_setup.rb

rails db:migrate RAILS_ENV=production

rails assets:precompile RAILS_ENV=production

Run Rails Server (or use Apache or nginx)

rails s -p80

Open a browser and go to: http://localhost

All done!

Setting up Daily Tasks Due Emails

Edit Cron Jobs sudo crontab -e to run the task lib/tasks/reminder_email.rake

SHELL=/bin/bash
0 1 * * * source /etc/profile.d/rvm.sh && cd /var/www/tasktracker && /usr/local/rvm/gems/ruby-2.4.1/bin/bundle exec rake reminder_email RAILS_ENV=production

Contributing to Task Tracker

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

License

Task Tracker is released under the MIT License.

tasktracker's People

Contributors

mcailler avatar remomueller avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

tasktracker's Issues

Allow calendar filtering by tasks assigned to a team member

Would it be possible to add a function in the calendar page where I can customize whose tasks I can see? As of now, the options are “assigned to me” and “assigned to everyone”. But I often need to specifically look at one team member's assigned schedules when I’m coordinating scheduling. It gets a little overwhelming when I’m searching through everyone’s tasks.

  • Requested by Tricia

Add project slugs

This will allow projects to be given a slug address:

http://___/projects/slug/tasks/1

This may refer to the projects/1/stickies/50

1st sticky in the slug project, but the 50th sticky in the system.

Allow users to store private templates

Private user templates could be used when setting up new projects, or could be copied to existing projects.

Users could also copy templates to their own private user area (for use with other projects) even if they didn't create the templates themselves.

Options for selecting more than one sticky and then implementing mass action on those.

I am having difficulties when looking to select multiple stickies and then either complete or edit them. I have no issues anymore regarding finding and filtering for these stickies, but when it comes to completing, my schedule requires many to be completed either at a time or in varying chunks. This would allow me to select and complete instead of individually waiting for each complete until continuing. When dealing with 100's at a time, this can be time consuming. I understand that the check box feature is being reviewed, but maybe some way to consider this mass action approach with the proper checks to ensure quality can prove very beneficial.

Project Page showing "Stickies" instead of Tasks.

The Project page references Stickies in both the "All Stickies" button and the "Reassign Stickies" selection which also has Stickies references in the pop ups. These should be appropriately renamed to "Tasks".

Currently completing tasks sends out a large amount of emails

Add a recently completed section in Task Tracker (or Recent Activity) that updates throughout the day as items are completed. Ex: If you are logged in to Task Tracker, it will update with recent comments, recent tasks added, and recent tasks completed (potentially recent tasks updated too).

We can then remove Task Completion emails, and potentially also Task Creation emails since these are included in the daily digest instead.

Tag simplification emails

For repeating tasks, make more apparent to reset/remove repeating

At present, user is expected to click the "frequency of repeat" (e.g. day, week month) dropdown and then choose "none" to reset/remove the repeating from a selected sticky.

New options might include 1) setting the numeric value to 0 and updating the sticky then removes the repeating information from that sticky and/or 2) provide a more explicit (to the user) method to remove repeating information from the sticky once it has been added.

Create functionality for groups to be repeated over period of time.

At present, it appears that only individual stickies can repeated over a defined iterative time period (i.e., every other week, on a monthly basis, etc.). Would it be possible to extend this function to groups? In other words, make it so that I can repeat the entire group of stickies to occur offset by a time period I define.

For example, let's say I have a template for "Conference Call" for a project that has 2 stickies - one with tag "Phone Call" called "Weekly Call" and one with tag "Paperwork" called "Circulate Agenda". "Circulate Agenda" is offset -1 day from the main sticky of the group, "Weekly Conference Call". I create a group that starts on the 2nd of the month which is a Wednesday. So the group of stickies has "Circulate Agenda" Tuesday the 1st and "Weekly Call" on Wednesday the 2nd. I want to set repeat the group so that "Circulate Agenda" shows up Tuesday the 8th, 15th, etc. and "Weekly Call" shows up Wednesday the 9th, 16th, etc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.