π Google Spreadsheet Clone A lightweight web-based Spreadsheet Application built with HTML5 Canvas, JavaScript, and Math.js. It mimics basic spreadsheet functionalities like editing cells, applying formulas (=A1+B1), inserting functions (SUM, AVERAGE, MIN, MAX), data validation, and basic file operations (Save, Load).
β¨ Features
- Canvas-based Spreadsheet Grid
- Cell Selection and Inline Editing
- Formula Bar to input and edit expressions
- Mathematical Functions (SUM, AVERAGE, MIN, MAX, COUNT)
- Data Quality Tools (TRIM, UPPER, LOWER, REMOVE_DUPLICATES, FIND_AND_REPLACE)
- Data Validation (Numeric validation)
- Save and Load Spreadsheet Data (via localStorage or download/upload mechanism)
- Generate Chart (Placeholder for future charting functionality)
π Project Structure
/ βββ index.html # Main HTML file βββ app.js # JavaScript logic for spreadsheet βββ README.md # Project documentation (this file)
βοΈ How to Run the Project Locally This project is pure frontend β no server setup is required. You just need a web browser. Steps:
-
Clone or Download the Repository: git clone https://github.com/Lakshit15/Google-sheet-clone.git or simply download the ZIP file and extract it.
-
Open the Project: Navigate to the project folder. Open the index.html file directly in your browser. (Right-click β Open With β Choose your Browser)
-
Thatβs it! π₯³ The Spreadsheet Clone will open and you can start using it. Requirements: Any modern web browser: Google Chrome (Recommended) Mozilla Firefox Microsoft Edge Safari
π οΈ Built With
HTML5 β for structure CSS3 β for styling (Dark Theme) JavaScript (ES6) β for functionality Canvas API β for grid rendering Math.js β for parsing and evaluating formulas
π§βπ» Usage Instructions
β’ Editing a Cell: o Click on any cell to select it. o Start typing to edit the content. o Press Enter to save.
β’ Using the Formula Bar: o Type a formula (e.g., =A1+B1) into the formula input box and press Enter.
β’ Applying Functions Quickly: o Use the toolbar buttons to insert predefined functions like SUM, AVERAGE, etc.
β’ Data Validation: o Use the "Validate Numeric" button to ensure selected cells have numeric values only.
β’ Saving Data: o Click the "Save" button to store your spreadsheet data (to localStorage or download as file depending on app.js implementation).
β’ Loading Data: o Click "Load" to restore previously saved data.
β’ Generating Chart: o Click "Generate Chart" (functionality under development or placeholder).
π€ Contributing
Contributions are welcome! Feel free to open an issue or submit a pull request if you find bugs or want to add new features.
π License This project is licensed under the MIT License β feel free to use and modify it!
βοΈ Contact GitHub: Lakshit15 Email: [email protected]
π Happy Spreadsheet-ing!