Skip to content

Chronii is a simple task management tool, with task timers and todos. Supports cloud syncing as well as anonymous use. Currently supports web and Windows officially, but can be built for other platforms.

Notifications You must be signed in to change notification settings

mitchell-wallace/Chronii

Repository files navigation

 _____ _                     _ _ 
/  __ \ |                   (_|_)
| /  \/ |__  _ __ ___  _ __  _ _ 
| |   | '_ \| '__/ _ \| '_ \| | |
| \__/\ | | | | | (_) | | | | | |
 \____/_| |_|_|  \___/|_| |_|_|_|

Chronii is a simple task management tool, with task timers and todos. Supports cloud syncing as well as anonymous use. Currently supports web and Windows officially, but can be built for other platforms.

At this stage there are no plans fur further maintenance of this project as this was primarily an experiment with Flutter and Firebase.

Getting Started

Use online at Chronii Web, or download the Windows app from releases.

Feel free to create an account and use the cloud storage. Note that this app is not production-ready, and should not be used for sensitive or critical data.

Features

  • Task timers with daily and weekly summaries
  • Todo list with filtering options
  • Note section with tabs
  • Authentication
  • Cloud storage using Firebase
  • Local storage for anonymous users

Screenshots

Timer screen:

Timer screen

Timer summary:

Timer summary

Login screen:

Login screen

Todo screen:

Todo screen

Todo filters:

Todo filters

Notes screen:

Notes screen

Notes grid:

Notes grid

Development

To build, make sure Flutter is installed. Run with

flutter run -d chrome

or

flutter run -d windows

or use equivalent build commands. Note that currently this project requires Firebase to be set up in order to run.

Firebase Setup

1. Create a Firebase Project

  1. Go to the Firebase Console and create a new project
  2. Give your project a name (e.g., "chronii-time")
  3. Enable Google Analytics if desired and follow the setup steps

2. Install FlutterFire CLI

dart pub global activate flutterfire_cli

3. Configure Firebase for Your App

  1. In your project directory, run:
flutterfire configure --project=your-firebase-project-id
  1. Select the platforms you want to support (Android, Web, Windows)
  2. This will generate firebase_options.dart and firebase.json files

4. Enable Firebase Services

  1. Authentication:

    • In the Firebase Console, go to Authentication → Sign-in methods
    • Enable Email/Password authentication
    • Enable Anonymous authentication
  2. Firestore Database:

    • Go to Firestore Database and create a database
    • Start in production mode or test mode
    • Choose a location for your database
    • Set up security rules for your database, for example:
rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{userId} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
      
      match /todos/{todoId} {
        allow read, write: if request.auth != null && request.auth.uid == userId;
      }
      
      match /timers/{timerId} {
        allow read, write: if request.auth != null && request.auth.uid == userId;
      }
    }
  }
}

About

Chronii is a simple task management tool, with task timers and todos. Supports cloud syncing as well as anonymous use. Currently supports web and Windows officially, but can be built for other platforms.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published