Giter VIP home page Giter VIP logo

parting's Introduction

Parting

Parting is a task management tool where you can share the tasks you've completed within groups of your teammates, allowing better control over who did waht and when.

main-screen

Using parting, you can create a user to track all the tasks you've completed, append them to a group or team and see what others have done in the same group. Create new groups and add tasks to them, search your tasks, manage your team assignments and more( in development c:).

Built With

  • Ruby on Rails
  • HTML/SASS
  • JQuery
  • Postgresql
  • Heroku

Live Demo

Start using Parting

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • Ruby on Rails >= 6.0.1
  • A local Postgres server
  • git
  • Nodejs >= 12.0

Setup

First, clone the repository from github with:

  git clone https://github.com/Chincoya/parting.git

Then change into the repo's directory with:

  cd parting

You can then proceed to installation.

Install

You will need to have a local postgres server to be able to use Parting. If you don't know how, refer to this tutorial. After you installed -and started- your postgres server, if your user is not authenticated, you will have to set up an environmental variable. Create a .env file in the App's root dir using:

  touch .env

That file will contain all the env. variables you'll need to properly setup and deply this app. For now, you'll only need -if that auth is required- one line:

  DBLOCALPASSWORD=YourLocalPassword

Once you've reached this point, run the following commands:

  bundle install
  rails db:setup
  rails db:migrate

These commands will:

  • Install all the packages needed for Parting to run
  • Create the database
  • Create and migrate the tables needed

If everything went right you should be able to run the test suit. And you should. Run:

  rails spec

To do so.

Usage

For a local environment -which, admittedly, I don't know what you'll want it for- you should run:

rails server

Or:

  rails s

To start a local server. Remember, you'll need an active postgres server to run this App. To check your postgres status, you can run:

  systemctl status postgresql

Run tests

As was already pointed out, both the commands:

  rails spec
  rspec

Will run the test suite. You can check out the tests -and add more if you want- under the ./spec directory.

Deployment

I decided to deploy the App on Heroku, but there's more options. If using Heroku, you'll need to follow the next steps.

First, create a Heroku account. Then follow this instructions to download and set up the Heroku CLI -Command Line Interface. You'll have to setup some ssh credentials unless you want to type them every time you do any heroku command.

After installing the Heroku CLI, navigate to Parting's root folder and run:

  heroku create the-name-you-want-to-use

Heroku will create an app in their servers, and wait for you to push your code into it. Run:

  git push heroku current-published-branch:master

Replacing 'current-published-branch' with the name of the main branch of the App. At the end of this Readme you'll find which branch it is.

Heroku will output their wholle process in your command prompt. This can take a while, specially the first time. In heroku your app will be built, compress and minified for production environment.

If this step goes right, Heroku will provide you, near the end of the output of the previus command, with the link to your deployed App. There's still one step you need to take

AWS

This app is configured to use an Amazon S3 bucket to store the uploaded icons. This configuration need to be done manually by you. To create and set up an Amazon S3 bucket, refer to this tutorial. Now you're ready to share your projects and tasks with the world, and manage collaborative work with others.

Notes

On the state of the project.

Currently, the project is still under heavy developement. Many features are bound to change, and there's still many waiting to be implemented. Refer to the Contributing section for more information.

Author

Daniel Chincoya

๐Ÿค Contributing

Contributions, issues and feature requests are welcome! But, know in advance, this is a work in progress. I plan to add many features myself in the coming months, and the code base will chnage a lot. Hit me up at Twitter if you want to contribute, or start developing and make a Pull Request. Many things a left to do, for example:

  • Constructing Private Teams for management, with team leaders that can request groups to be created and tasks to be performed.
  • Task Validation, meaning more users can validate the tasks you submit.
  • Group Privacy.
  • Group Channels to leave messages.
  • Team Channels to ...
  • And much more

Feel free to check the issues page. Anything there is free reign.

Show your support

Give a โญ๏ธ if you like this project! Or, even better, make a feature request!

Acknowledgments

Additional Icons fetched from flaticon.com, authored by:

  • Pixel Perfect
  • Freelk
  • Ddara

License

This project is MIT licensed.

CURRENT WORKING BRANCH:

app-features

parting's People

Contributors

chincoya avatar dependabot[bot] avatar

Watchers

James Cloos avatar  avatar

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.