Skip to content

⚡ Quick Start with FreeTodo ⚡

1. Clone Project Repository

First, clone the FreeTodo project from GitHub:

bash
git clone https://github.com/FreeU-group/FreeTodo.git
cd FreeTodo

2. Install Dependencies

This project uses uv for fast and reliable dependency management.

First, install uv if you haven't already:

bash
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

Note: After installation, uv may not be immediately available in the current terminal. To activate it in the current session:

  • Windows (PowerShell): Run $env:Path = "$env:USERPROFILE\.local\bin;$env:Path" to refresh PATH
  • macOS/Linux: Run exec $SHELL to reinitialize your shell session, or restart your terminal

Alternatively, you can simply open a new terminal window and uv will be available automatically.

Then, in the project folder, install the dependencies:

bash
# Sync dependencies from pyproject.toml and uv.lock
uv sync

# Activate virtual environment
# macOS/Linux
source .venv/bin/activate

# Windows
.venv\Scripts\activate

3. Start Services

Start Backend Service

In the project folder, run the server:

bash
python -m lifetrace.server

The backend service will automatically find an available port starting from 8001. The actual port will be displayed in the console.

Start Frontend Service

The frontend is required to use FreeTodo. Start the frontend development server:

bash
cd free-todo-frontend

pnpm install
pnpm dev

The frontend development server will automatically find an available port starting from 3001 and detect the backend port automatically.

4. Start Using

Once both services are running, open your browser and visit the frontend URL displayed in the console (typically http://localhost:3001) to start using FreeTodo! 🎉