/CollaboCanvas

Real-time collaboration on an infinite canvas. Designed for brainstorming, planning, and visualization, it provides a user-friendly platform built with widely-known technologies for easy customization and self-hosting. A free alternative to Miro and LucidSpark.

Primary LanguageHTML

CollaboCanvas

A free, open-source alternative to Miro, offering real-time collaboration on an infinite canvas. Designed for brainstorming, planning, and visualization, it provides a user-friendly platform built with widely-known technologies for easy customization and self-hosting.

Visit the product page here: https://mfgoes.github.io/CollaboCanvas/

Features

  • Real-time collaboration
  • Infinite canvas
  • Basic shapes and text
  • Create multiple boards
  • Drag and drop functionality
  • Zoom and pan
  • Export and import as image or PDF
  • User authentication and authorization
  • Create a share link with an optional password

Sub-features

  • Undo changes
  • Change text sizes
  • Change shape colors
  • Add scalable post-its with adjustable colors

Technology Stack

  • Front-end: React.js
  • Back-end: Node.js, Express.js
  • Database: MongoDB
  • Real-time communication: Socket.IO

Getting Started

Prerequisites

  • Node.js (latest LTS version)
  • npm (latest version)
  • MongoDB (latest version)

Installation

  1. Clone the repository:
bashCopy code
git clone https://github.com/yourusername/collaboCanvas.git

  1. Change to the project directory:
bashCopy code
cd collabocanvas

  1. Install dependencies:
Copy code
npm install

  1. Create a .env file in the root folder and add the required environment variables (refer to the .env.example file for guidance).
  2. Start the development server:
arduinoCopy code
npm run dev

  1. Open your browser and navigate to http://localhost:3000 to view the application.

Contributing

We welcome contributions from the community! If you're interested in helping develop CollaboCanvas, please follow these steps:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature-name
  3. Commit your changes: git commit -m "Add your feature"
  4. Push your branch: git push origin feature/your-feature-name
  5. Open a pull request in the original repository

Please make sure your code follows the existing coding style and guidelines. When submitting a pull request, please provide a clear description of the changes and reference any related issues.

License

CollaboCanvasis released under the MIT License. See the LICENSE file for more information.

Contact

For any questions, issues, or suggestions, please open an issue on GitHub or contact the project owner at mfgoes1@gmail.com. https://twitter.com/MischaProjects