8000 GitHub - usekaneo/kaneo: πŸš€ An open source project management platform focused on simplicity and efficiency. Self-host it, customize it, make it yours.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ kaneo Public

πŸš€ An open source project management platform focused on simplicity and efficiency. Self-host it, customize it, make it yours.

License

Notifications You must be signed in to change notification settings

usekaneo/kaneo

Repository files navigation

Kaneo's logo

Kaneo

license GitHub Workflow Status Discord

A modern, self-hosted project management platform that gets out of your way.

Why Kaneo?

We built Kaneo because existing project management tools either feel bloated with features you'll never use, or they're too simple to handle real work. Kaneo finds the 8000 sweet spotβ€”powerful enough for complex projects, simple enough that you'll actually want to use it.

What makes it different:

  • Clean interface that focuses on your work, not the tool
  • Self-hosted so your data stays yours
  • Actually fast because we care about performance
  • Open source and free forever

Getting Started

The fastest way to try Kaneo is with Docker Compose. This sets up the API, web interface, and PostgreSQL database:

services:
  postgres:
    image: postgres:16-alpine
    environment:
      POSTGRES_DB: kaneo
      POSTGRES_USER: kaneo_user
      POSTGRES_PASSWORD: kaneo_password
    volumes:
      - postgres_data:/var/lib/postgresql/data
    restart: unless-stopped

  backend:
    image: ghcr.io/usekaneo/api:latest
    environment:
      JWT_ACCESS: "your-secret-key-here"
      DATABASE_URL: "postgresql://kaneo_user:kaneo_password@postgres:5432/kaneo"
    ports:
      - 1337:1337
    depends_on:
      - postgres
    restart: unless-stopped

  frontend:
    image: ghcr.io/usekaneo/web:latest
    environment:
      KANEO_API_URL: "http://localhost:1337"
    ports:
      - 5173:5173
    depends_on:
      - backend
    restart: unless-stopped

volumes:
  postgres_data:

Save this as compose.yml, run docker compose up -d, and open http://localhost:5173.

Quick tip: Change JWT_ACCESS to something secure in production. This is used to sign authentication tokens.

Configuration Options

Variable What it does Default
KANEO_API_URL Where the web app finds the API Required
JWT_ACCESS Secret key for user authentication Required
DATABASE_URL PostgreSQL connection string Required
DISABLE_REGISTRATION Block new user signups true

Database Setup

Kaneo uses PostgreSQL for data storage. The Docker Compose setup above handles this automatically, but if you're running Kaneo outside of Docker, you'll need to:

  1. Install PostgreSQL (version 12 or higher)
  2. Create a database and user:
    CREATE DATABASE kaneo;
    CREATE USER kaneo_user WITH PASSWORD 'your_password';
    GRANT ALL PRIVILEGES ON DATABASE kaneo TO kaneo_user;
  3. Set the DATABASE_URL environment variable:
    export DATABASE_URL="postgresql://kaneo_user:your_password@localhost:5432/kaneo"

Kubernetes Deployment

If you're running Kubernetes, we have a Helm chart that handles the complexity:

# Clone the repo
git clone https://github.com/usekaneo/kaneo.git
cd kaneo

# Install with Helm
helm install kaneo ./charts/kaneo --namespace kaneo --create-namespace

# Access locally
kubectl port-forward svc/kaneo-web 5173:5173 -n kaneo

Open http://localhost:5173 and you're good to go.

Production Setup

For real deployments, you'll want proper ingress:

helm install kaneo ./charts/kaneo \
  --namespace kaneo \
  --create-namespace \
  --set ingress.enabled=true \
  --set ingress.className=nginx \
  --set "ingress.hosts[0].host=pm.yourcompany.com"

Check the Helm chart docs for TLS setup, cert-manager integration, and other production considerations.

Development

Want to hack on Kaneo? Here's how to get a development environment running:

# Clone and install dependencies
git clone https://github.com/usekaneo/kaneo.git
cd kaneo
pnpm install

# Start PostgreSQL (using Docker)
docker run --name kaneo-postgres -e POSTGRES_DB=kaneo -e POSTGRES_USER=kaneo_user -e POSTGRES_PASSWORD=kaneo_password -p 5432:5432 -d postgres:16-alpine

# Set up environment variables
cd apps/api
echo "DATABASE_URL=postgresql://kaneo_user:kaneo_password@localhost:5432/kaneo" > .env

# Run database migrations
pnpm run db:migrate

# Start the API
pnpm run dev

# In another terminal, start the web app
cd apps/web
pnpm run dev

The API runs on port 1337, web app on 5173. Both will reload when you make changes.

Migration from SQLite

If you're upgrading from a previous version that used SQLite, you'll need to migrate your data to PostgreSQL. We recommend:

  1. Export your data from the old SQLite database
  2. Set up PostgreSQL using the new Docker Compose configuration
  3. Import your data into the new PostgreSQL database

Contact us on Discord if you need help with the migration process.

Community

Contributing

We're always looking for help, whether that's:

  • Reporting bugs or suggesting features
  • Improving documentation
  • Contributing code
  • Helping other users on Discord

Check out CONTRIBUTING.md for the details on how to get involved.

License

MIT License - see LICENSE for details.


Repobeats analytics image

Built with ❀️ by the Kaneo team and contributors

About

πŸš€ An open source project management platform focused on simplicity and efficiency. Self-host it, customize it, make it yours.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 
0