An open API service indexing awesome lists of open source software.

https://github.com/spaquet/listopia

A Modern Rails Task Management and List sharing app
https://github.com/spaquet/listopia

list productivity task-management

Last synced: 3 months ago
JSON representation

A Modern Rails Task Management and List sharing app

Awesome Lists containing this project

README

          

# Listopia

[![Ruby on Rails](https://img.shields.io/badge/Rails-8.0+-d82c20?style=flat-square&logo=rails)](https://rubyonrails.org)
[![Ruby](https://img.shields.io/badge/Ruby-3.4.7-d91c1c?style=flat-square&logo=ruby)](https://www.ruby-lang.org)
[![Tests](https://img.shields.io/badge/Tests-672%20Passing-4CAF50?style=flat-square&logo=rspec)](https://github.com/spaquet/listopia)
[![License](https://img.shields.io/badge/License-AGPL%20v3-blue?style=flat-square)](LICENSE)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-15+-336791?style=flat-square&logo=postgresql)](https://www.postgresql.org)
[![Hotwire](https://img.shields.io/badge/Hotwire-Turbo%20%26%20Stimulus-5F3DC4?style=flat-square&logo=turbo)](https://hotwired.dev)

![Listopia Screenshot](https://raw.githubusercontent.com/spaquet/listopia/main/images/screenshot.png)

**Listopia** is a modern, collaborative list management application built with Ruby on Rails 8. It showcases cutting-edge Rails development practices, offering real-time collaboration, passwordless authentication, and a responsive, user-friendly interface powered by Tailwind CSS.

## Core Mission

Listopia aims to provide a powerful yet intuitive platform for organizing tasks, projects, and collaborative workflows, while serving as a reference for modern Rails 8 development. Whether you're managing personal to-do lists or collaborating with a team, Listopia delivers a seamless experience with live updates and smart features.

## Key Features

- **Real-Time Collaboration**: Instant updates for shared lists using Hotwire Turbo Streams.
- **Passwordless Authentication**: Secure magic link sign-in alongside traditional methods.
- **Smart Lists**: Organize tasks, notes, links, files, and reminders with drag-and-drop reordering.
- **Responsive Design**: Mobile-first interface built with Tailwind CSS for accessibility and performance.
- **Progress Tracking**: Visualize completion percentages and track collaborator activity.
- **Secure Sharing**: Granular permissions and public sharing options with unique URLs.
- **AI-Powered Chat**: Control Listopia with natural language commands. See [AI_DISCLAIMER.md](AI_DISCLAIMER.md) for important information on limitations and risks.

## Documentation

Listopia has comprehensive documentation organized by task and audience. Get started with the right guide for your needs:

- **Architecture Overview** → [CLAUDE.md](CLAUDE.md) - Master development reference with stack overview, architecture patterns, and standards
- **Building Chat Features** → [CHAT_FEATURES.md](CHAT_FEATURES.md) - Implementation guide for adding commands, tools, and message templates
- **Search & RAG** → [RAG_SEMANTIC_SEARCH.md](RAG_SEMANTIC_SEARCH.md) - Complete guide to embeddings, vector search, and RAG integration
- **Finding Documentation** → [DOCUMENTATION_MAP.md](DOCUMENTATION_MAP.md) - Quick navigation guide for all other documentation

**For Developers:**
- New team members? → Start with [DOCUMENTATION_MAP.md](DOCUMENTATION_MAP.md)
- Implementing chat features? → Follow [CHAT_FEATURES.md](CHAT_FEATURES.md)
- Working with search/RAG? → Reference [RAG_SEMANTIC_SEARCH.md](RAG_SEMANTIC_SEARCH.md)
- Need architecture details? → See [CLAUDE.md](CLAUDE.md)

**For AI Agents & Claude Code:**
[DOCUMENTATION_MAP.md](DOCUMENTATION_MAP.md) provides the complete documentation structure and optimal entry points for any task.

## Getting Started

To set up and run Listopia locally, follow the instructions in [INSTALL.md](INSTALL.md).

## Contributing

We welcome contributions to Listopia! Please review our [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines and our [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) to ensure a positive community environment.

## License

Listopia is licensed under the [GNU Affero General Public License v3.0](LICENSE). This ensures that any modified versions used in a SaaS context must make their source code available. See the [LICENSE](LICENSE) file for details.

## Security

For information on reporting security vulnerabilities, please see [SECURITY.md](SECURITY.md).

## Project Status

For the latest updates on development progress, features, and contributors, check [STATUS.md](STATUS.md).

## Why Listopia?

Listopia is both a practical tool and a showcase of Rails 8's capabilities, including Solid Queue, Zeitwerk autoloading, and modern authentication patterns. Whether you're a developer exploring Rails or a user seeking a robust list management solution, Listopia offers a blend of innovation and utility.

Join us in building the future of collaborative task management!