Skip to content

Latest commit

 

History

History
129 lines (87 loc) · 4.34 KB

File metadata and controls

129 lines (87 loc) · 4.34 KB

Quote.Vote Next

An open-source, text-only social platform for thoughtful dialogue. Every post creates its own chatroom where people can quote, vote, and respond in real time.

License Open Collective

Quote.Vote fosters deliberative, ad-free conversations for communities and civic collaboration. Built with modern web technologies including Next.js 16, React 19, TypeScript, GraphQL, and Tailwind CSS.

🚀 Features

  • Real-time Conversations: Each post creates its own chatroom for instant dialogue
  • Quote & Vote System: Engage with content through quoting and voting mechanisms
  • Text-Only Platform: Focus on thoughtful dialogue without distractions
  • Modern Tech Stack: Built with Next.js 16, React 19, and TypeScript
  • Type-Safe: Full TypeScript implementation for both frontend and backend
  • Ad-Free: Clean, focused experience for meaningful discussions

🏗️ Project Structure

This is a monorepo containing the complete Quote.Vote application:

quotevote-next/
├── quotevote-frontend/    # Next.js 16 frontend application
├── quotevote-backend/     # Express + TypeScript backend API
└── docs/                  # Migration and project documentation

🛠️ Tech Stack

Frontend

  • Framework: Next.js 16 (App Router)
  • UI Library: React 19
  • Language: TypeScript (Strict Mode)
  • Styling: Tailwind CSS 4.x
  • Components: shadcn/ui
  • State Management: Zustand
  • GraphQL Client: Apollo Client

Backend

  • Runtime: Node.js 20.x+
  • Framework: Express 5.2.1
  • Language: TypeScript (Strict Mode)
  • GraphQL: Apollo Server
  • Database: MongoDB with Mongoose

🎨 Design Resources

📋 Prerequisites

  • Node.js: 20.x or higher
  • pnpm: Latest version (install with npm install -g pnpm)
  • MongoDB: Local instance or connection string (for backend)

🚀 Getting Started

Clone the Repository

git clone https://github.com/QuoteVote/quotevote-next.git
cd quotevote-next

Frontend Setup

cd quotevote-frontend
pnpm install
pnpm dev

The frontend will be available at http://localhost:3000.

For detailed frontend documentation, see the Frontend README.

Backend Setup

cd quotevote-backend
pnpm install
pnpm dev

The backend will be available at http://localhost:4000.

For detailed backend documentation, see the Backend README.

📚 Documentation

🔄 Legacy Codebase

This project is a complete migration from the legacy codebase:

🤝 Contributing

We welcome contributions! Please ensure:

  • All tests pass
  • TypeScript compiles without errors
  • Code follows the project's style guidelines
  • Documentation is updated as needed

For detailed contribution guidelines, see the individual README files in the frontend and backend directories.

💰 Support

Quote.Vote is an open-source project. If you find it valuable, please consider supporting us:

Donate via Open Collective

📄 License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) - see the LICENSE file for details.


Built with ❤️ by the Quote.Vote community