Infinite Canvas Project
This project implements an infinite canvas where users can draw and interact with tiles. Each tile is uploaded to a RESTful server when it changes, allowing for dynamic updates and storage.
Project Structure
infinite-canvas-project
├── backend
│ ├── db
│ │ └── schema.sql # SQL schema for the database
│ ├── public
│ │ └── index.php # Entry point for the backend application
│ ├── src
│ │ ├── config.php # Configuration settings for the backend
│ │ ├── db.php # Database connection management
│ │ └── upload_tile.php # Handles tile uploads from the frontend
├── frontend
│ ├── css
│ │ └── styles.css # Styles for the frontend application
│ ├── js
│ │ └── canvas.js # JavaScript for infinite canvas functionality
│ └── index.html # Main HTML file for the frontend application
└── README.md # Documentation for the project
Setup Instructions
Backend
- Navigate to the
backend
directory. - Create a database and run the SQL schema located in
db/schema.sql
to set up the necessary tables. - Configure the database connection settings in
src/config.php
. - Deploy the backend using a PHP server (e.g., Apache, Nginx).
Frontend
- Navigate to the
frontend
directory. - Open
index.html
in a web browser to view and interact with the infinite canvas. - Ensure the backend server is running to handle tile uploads.
Features
- Infinite canvas for drawing
- Tile-based storage system
- RESTful API for tile uploads
- Dynamic updates to the canvas
Technologies Used
- PHP for backend development
- MySQL for database management
- HTML, CSS, and JavaScript for frontend development
Contributing
Feel free to submit issues or pull requests for improvements and bug fixes.