![Logo](client/resources/icon.png)
An AI-powered scheduling app designed to help you manage your time and get more done.
Releases
ยท
Report Bug
ยท
Request Feature
Table of Contents
Timely is an AI-powered scheduling application that redefines the approach to personal and professional time management. Unlike traditional scheduling tools, Timely stands out in the crowded market by not just organizing your tasks but also optimizing how you handle your workload.
In an era where productivity tools often add to our workload rather than reduce it, Timely offers a refreshing change. Here's what makes it unique:
-
AI-Driven Efficiency: At its core, Timely harnesses advanced AI algorithms to analyze your work habits. It intelligently suggests an optimized schedule based on your past performance and preferences, helping you work smarter, not harder.
-
Personal Productivity Insights: Timely goes beyond just scheduling tasks. It provides valuable insights into your productivity patterns, offering daily and weekly summaries that help you understand and improve your work habits.
-
Stress-Free Scheduling: The app intuitively reschedules and prioritizes tasks, reducing the often overwhelming burden of manual planning. Its user-friendly interface ensures that managing your time is a seamless and stress-free experience.
-
Seamless Integration: Designed to integrate effortlessly with existing tools and workflows, Timely syncs with other apps and services to bring all aspects of your schedule into one coherent picture.
Timely is for everyone who seeks to take control of their time - from busy professionals juggling multiple deadlines to students managing their study schedules. It's more than an app; it's your personal time management assistant.
To get a local copy up and running follow these steps.
-
npm
npm install npm@latest -g
-
API keys
- In order to fully utilize the application's functionalities, you will need to obtain API keys from the following services:
- Google Cloud Platform
- Create a new project in the Google Cloud Platform Console and enable OAuth 2.0 for the project. Follow the instructions here to obtain a client ID and secret. In order to integrate Google authentication with MongoDB Realm, please follow the instructions under the MongoDB section below.
- Sentry
- Create a new project in Sentry and obtain a DSN.
- MongoDB
- You will need to create a MongoDB Cluster and enable Device Sync. You will also need to enable email/password authentication as well as Google authentication.
- Google Cloud Platform
- In order to fully utilize the application's functionalities, you will need to obtain API keys from the following services:
-
Clone the repository
git clone https://github.com/rachelleburgos/Timely.git
-
Enter the project directory's client folder
cd Timely/client
-
Create a
.env
file in the root of the client folder and add the following:RENDERER_VITE_SENTRY_DSN=<YOUR_SENTRY_DSN> RENDERER_VITE_GOOGLE_CLIENT_ID=<YOUR_GOOGLE_CLIENT_ID> RENDERER_VITE_GOOGLE_SECRET=<YOUR_GOOGLE_SECRET> RENDERER_VITE_REALM_APP_ID=<YOUR_REALM_APP_ID>
The
RENDERER_VITE
prefix is required for the renderer process to access the environment variables. -
Install NPM packages
npm install
-
Build the project
- For Windows
npm run build:win
- For MacOSX
npm run build:mac
- For Linux
npm run build:linux
Below is an outline of planned features and enhancements.
- Migration to TypeScript
- Add testing frameworks
- Add CI/CD using GitHub Actions
- Add integration with other calendar services
- Add support for mobile devices
- Add support for web browsers
- Account for mood and energy levels when scheduling tasks
- Account for geographical location when scheduling tasks
- Account for uncompleted tasks when scheduling tasks
- Add support for recurring tasks
- Add support for subtasks
- Add support for task dependencies
- Add support for task prioritization
- Add support for task categorization
- Accessibility improvements
- Add support for multiple languages
Distributed under the MIT License. See LICENSE.txt
for more information.
- FullCalendar: Calendar library used for the main dashboard's calendar
- Formik: Form library used for the login and signup forms
- Yup: Form validation library used for the login and signup forms in conjunction with Formik
- React Router: Routing library used for the application
- Font Awesome: Icons used for the application
- Image Shields: Shields used for the README
- README Template: README template used for this README ๐