Productivity
Create daily reports automatically from your Notion task page. Project aimed to reduce the workload when making the daily work report.
Having the following Notion Scrum-like ToDo page
This project creates the following report:
Clone the repo:
git clone https://github.com/ErlantzCalvo/DailyReportCreator
Place in the folder:
cd DailyReportCreator
Install the dependencies:
npm install
In order to run the project, you must have a Notion API key. If you don't know how to create the mentioned key, take a look at their well explained documentation.
Once you have the API key, add it to the .env
file located in the project's root folder, replacing the field <API_KEY> by your key. The next step is to get the ID of the page you want to track/be reported. It is also explained in the documentiation but, in short, if you are using Notion in the browser, the page ID is the string located between
https://www.notion.so/myworkspace/a8aec43384f447ed84390e8e42c2e089?v=...
|--------- Database ID ---------|
If you are using the Notion desktop app, you can get the previous link in the top-right part of it, in the share button -> Copy link.
Once you have the ID of the page you want to track, place it in the .env
file, replacing the <Page ID> field.
Note: Remember to give your API key, at least, read acces of the page you want to track as shown in the documentation
If everything is correctly set up, you can the app running the following command:
npm start
Or
node index.js [options]
-c or --to-clipboard : Copy the resulting report to the clipboard.
-h or --help : Display the available options.
The app need to know which is the title for each status. This is, in the picture of the notion page (At the top of this README) it can be seen that the 3 status names are To Do, Doing and Done 🙌. This three names must be put in the config.json
file:
"PendingTasks":"To Do",
"DoingTasks":"Doing",
"FinishedTasks": "Done 🙌"
It can also be configured the texts that will be displayed in the output in the Texts field:
"Texts": {
"CurrentStatusFinished": "FINISHED",
"CurrentStatusDoing": "IN PROGRESS",
"BeginningOfMessage": "My daily report today is as follows:\n",
"PendingTasksBeginning": "\nPending tasks:\n"
}