Skip to content

Smart task management website with React, Firebase, and Redux for efficient workflows.

License

Notifications You must be signed in to change notification settings

Anmol283/OptiFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

17 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ OptiFlow - Smart Task Management

A powerful, intuitive task management application that helps you organize your workflow with ease. Built with React.js and Firebase Authentication for secure user access.

React Firebase Redux

✨ Features that Shine

  • πŸ“‹ Intuitive Task Management

  • πŸ“Š Productivity Analytics

  • πŸ”’ Secure User Authentication

πŸš€ Quick Setup

Prerequisites

# Node.js installation required
node -v  # Should be v14.0.0 or higher

# npm or yarn for package management
npm -v   # Should be v6.0.0 or higher
# or
yarn -v  # Should be v1.22.0 or higher

# Firebase project setup required
# Create a project at https://console.firebase.google.com/

Installation

  1. Clone the repository

    git clone https://github.com/Anmol283/OptiFlow
    cd optiflow
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Configure Firebase

    // In src/firebase/config.js, replace with your Firebase config
    const firebaseConfig = {
      apiKey: "YOUR_API_KEY",
      authDomain: "your-project-id.firebaseapp.com",
      projectId: "your-project-id",
      storageBucket: "your-project-id.appspot.com",
      messagingSenderId: "YOUR_MESSAGING_SENDER_ID",
      appId: "YOUR_APP_ID"
    };
  4. Start the development server

    npm start
    # or
    yarn start
  5. Access the application

    Open http://localhost:3000 in your browser
    

πŸ› οΈ Technical Architecture

optiflow/
β”œβ”€β”€ πŸ“ public/                 # Static files
β”‚   β”œβ”€β”€ index.html            # HTML entry point
β”‚   β”œβ”€β”€ manifest.json         # PWA manifest
β”‚   └── assets/               # Images and icons
β”œβ”€β”€ πŸ“ src/                    # Source code
β”‚   β”œβ”€β”€ πŸ“ components/         # React components
β”‚   β”‚   β”œβ”€β”€ Auth/             # Authentication components
β”‚   β”‚   β”œβ”€β”€ Dashboard/        # Dashboard layout
β”‚   β”‚   β”œβ”€β”€ Tasks/            # Task-related components
β”‚   β”‚   β”œβ”€β”€ UI/               # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ Navbar.jsx        # Navigation bar component
β”‚   β”‚   β”œβ”€β”€ Firebase.jsx      # Firebase-related component
β”‚   β”‚   └── ThreeParticles.jsx # Particle.js component (assumed from "threeparticles")
β”‚   β”œβ”€β”€ πŸ“ context/            # React context
β”‚   β”œβ”€β”€ πŸ“ firebase/           # Firebase configuration
β”‚   β”œβ”€β”€ πŸ“ hooks/              # Custom hooks
β”‚   β”œβ”€β”€ πŸ“ pages/              # Application pages
β”‚   β”‚   β”œβ”€β”€ Login.jsx         # Login page
β”‚   β”‚   β”œβ”€β”€ Signin.jsx        # Sign-in page
β”‚   β”‚   β”œβ”€β”€ Dashboard.jsx     # Dashboard page
β”‚   β”‚   β”œβ”€β”€ Calendar.jsx      # Calendar page
β”‚   β”‚   β”œβ”€β”€ Report.jsx        # Report page
β”‚   β”‚   └── TaskLoader.jsx    # Task loader page
β”‚   β”œβ”€β”€ πŸ“ redux/              # Redux store setup
β”‚   β”‚   β”œβ”€β”€ actions/          # Redux actions
β”‚   β”‚   β”œβ”€β”€ reducers/         # Redux reducers
β”‚   β”‚   └── store.js          # Redux store configuration
β”‚   β”œβ”€β”€ πŸ“ styles/             # CSS/SCSS styles
β”‚   β”œβ”€β”€ App.js                # Main App component
β”‚   └── index.js              # JavaScript entry point
└── πŸ“ config/                 # Build configuration

πŸ”’ Authentication Flow

User Registration

OptiFlow provides a seamless registration process:

  1. Email/Password Registration

    const handleSignUp = async (e) => {
      e.preventDefault();
      try {
        await signUpUser(email, password);
        history.push('/dashboard');
      } catch (error) {
        setError(error.message);
      }
    };
  2. Social Media Authentication

    • Google Sign-In
    • Github Sign-In

πŸ“‹ Task Management Features

Creating Tasks

Users can create tasks with:

  • Title and description
  • Priority level (Low, Medium, High)
  • Due date

🎨 Styling Highlights

  • Modern UI: Sleek, minimalist design with Particle.js effects
  • Animations: Framer Motion task loader and smooth transitions
  • Accessibility: WCAG 2.1 compliant design

πŸ”œ Roadmap

  • Collaborative task sharing
  • Task templates
  • Email notifications
  • Time tracking integration
  • Advanced reporting features
  • Mobile app version (React Native)

🀝 Contributing

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

Distributed under the MIT License. See LICENSE for more information.

πŸ“¬ Let's Connect!


πŸ’» Visit our website: OptiFlow

🌟 Star this repository if you find it helpful!

πŸ™ Acknowledgments


About

Smart task management website with React, Firebase, and Redux for efficient workflows.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors