Gamify your slack tasks! π»
A lot of teams use Slack to get things done. However when you have ton of things to do with no short term rewards in sight, it gets difficult to check off those tasks. That's where SlackPoint comes to the rescue! SlackPoint aims to make work more fun and get people motivated to finish their tasks by gamifying Slack!
SlackPoint.mp4
List of miracles that slackpoint can performβ¨:
- Create a new task
- Mark task as done
- View pending tasks
- View completed tasks
- Ask for help
lets go over these one by one...
You can create a new task by simple using the /create-task
command. We ask for just a few more parameters in addition to that:
Command: /create
This particular command will create a new task with the description as Hey! This is my new task
having 100
points and a deadline of 15th October 2022
Here you can mark a task as completed. You just need to give the task ID as a parameter
Command: /task-done [task ID]
Example:
/task-done 10214
This will mark the task having task ID 10214
as completed. Further, updates records to show that this task is completed by user who posted this command
This command will return the list of incomplete tasks. Relax! no parameters required here
Command: /viewpending [no parameters]
Above command will display a list of pending tasks
Like the above command this will return a list of completed tasks. No parameters here as well!
Command: /viewcompleted [no parameter]
Above command will display a list of completed tasks
Want to get competitive? Take a peek at the leaderboard and try to beat the winner!
Command: /leaderboard [no parameters]
It displays the list of the top performers on the channel along with their points.
Newbie at using slackpoint? You could use some help...
Command: /help [no parameters]
This will provide you will all the available commands and how to use them. Same sh*t this section is doing.
The docs
folder incorporates all necessary documents and documentation in our project.
Code formatter: black and flake8
Tech stack: Flask, PostgreSQL
-
- Download Python3.x.
- Download Flask.
- Download PostgreSQL
- Download Pgadmin
Create a virtual environment:
python3.x -m venv test_env
Activate the virtual environment: Linux/MacOS:
source test_env/bin/activate
Windows:
./test_env/Scripts/activate
Clone the project
git clone https://github.com/nehakale8/slackpoint.git
Go to the project directory
cd Slackpoint
Install dependencies
pip install -r requirements.txt
Log on to api.slack.com and create your own slack bot.
On ngrok shell run 'ngrok http 5000' to get the public IP address in your local machine.
Add all the /commands in the bot configuration and paste the url from ngrok shell to requesting url section in the bot configuration.
Finally, change the URL in interactivity and shortcuts, URL: /slack/interactive-endpoint.
Start the server
flask run
- Site will be hosted at:
`http://127.0.0.1:5000/`
Before creating the database,
(1) Create a database in PgAdmin with any name convention.
(2) Change the local path of PostgreSQL in .env file (DATABASE_URL= 'postgresql://postgres:(password)@localhost/(database name from PgAdmin')
(3) Provide the Slack sigining secret and Slack bot token from the bot you created.
To create tables in the database,
First run the command 'flask shell'
Next command to create the database - 'db.create_all()'
- flask
- slackclient
- python-dotenv
- slackeventsapi
- flask-sqlalchemy
- psycopg2
- pytest
- pytest-mock
- black
- pylint
- coverage
- pytest-cov
- Assign users to tasks while creating each task
- Add a command to reassign users
- Add a command to edit an existing task
- Progress of a task is currently binary. It can be improved to allow a percentage progress improvement
- Deploy the service on the cloud
- Improve code coverage
- UI/UX: Improve leaderboard command response to show gifs/graphs to further make the leaderboard more attractive and gamify it
Heyy! We are a group of Graduate students at NC State University, or to be more specific, we are dreamers who want to be pioneers of the Computer Science world. Consider this homework to be one of our many steps at achieving our dreams! π
Good question! We are international students, visiting the United States for the first time. We all live near the Centinnial campus of NC State University. Our eyes ready to take in the grandeur and technological advancements of the United States, we were rather welcomed by a group of Anthropods which we all are afraid of. Yup, you guessed it right. Cockroaches! To overcome this fear and to take on challenges, we have named our group RoachPack! πͺ
- @MithilDani A studious nearsighted bespectacled charming individual who is an expert at building Django applications, designing optimal solutions and has an extensive work experience of 2 years in the IT industry.
- @NehaKale A hardworking bespectacled Machine Learning expert who has multiple AI and ML projects and research paper contributions. She is an expert at providing out-of-the-box solutions and always has an unique perspective. She also provides our group with the much needed diversity π
- @RishikeshYelne An old, very old, almost ancient bespectacled individual (so many bespectacled members π€) with a work experience of 5 years in the IT industry. He is proficient and well-versed with the .NET Framework, which he claims to be highly relevant and at par with the newer technologies. Let's just respect his ancient age and agree with him for now. -laughs in Python-
- @VanshMehta A self-proclaimed charming good-looking handsome individual who is a Java enthusiast. A constant source of good jokes and efficient code, he has charmed his way into our group, just like Shah Rukh Khan does it in Bollywood movies.
- @RitwikVaidya A no-nonsense serious and dedicated prankster / comedian of the group, with an unique knack at solving programming questions and a strong supporter of C++ programming language.
For any doubts or queries, reach out to our Developer Team @ slackpoint.developers@gmail.com