Skip to content

SocialCalc is a web-based spreadsheet application designed for real-time collaboration. It provides a modern, user-friendly interface, secure authentication, and efficient performance, making it an ideal tool for teams to work together seamlessly on shared data.

Notifications You must be signed in to change notification settings

Prabal-verma/SIH_INTERNAL_ROUND_1_NERD_NINZAS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Building a Modern Version of SocialCalc using Node.js, Go, or Django with AI Tools like Copilot

This README provides an overview of the project, including team details, relevant links, tasks completed, tech stack, key features, and steps to run the project locally.

Team Details

Team Name: NERD NINZAS

Team Leader: @Prabal-verma

Team Members:

Project Links

Tasks Completed

  1. Feature Development: Spreadsheet features similar to Excel have been developed. Real-time collaboration is currently in progress.
  2. Authentication Integration: Implemented Clerk for user authentication also planning to implement authentication using NextAuth.
  3. Database Management: Used MongoDB with Mongoose for managing data.
  4. Backend Setup: Built using Node.js with Express; considered Go and Django for alternatives.
  5. Containerization: Dockerized the application for better deployment management.
  6. Scaling: Planned to scale using AWS EC2 clusters to handle increased loads efficiently.
  7. AI Integration: Leveraged AI tools like GitHub Copilot to enhance development productivity.

Tech Stack

  • Frontend: React, Tailwind CSS, Syncfusion Spreadsheet Component, Aceternity UI, ShadCN
  • Backend: Next.js, Express, MongoDB, Mongoose, Firebase (for file storage)
  • Authentication: Clerk, NextAuth
  • Containerization: Docker, AWS E2R
  • Deployment and Scaling: AWS EC2 Clusters
  • AI Tools: GitHub Copilot

Key Features

  • Collaborative spreadsheet functionality (real-time collaboration in progress).
  • User authentication and authorization using Clerk.
  • Scalable architecture with AWS EC2 for managing high traffic.
  • Persistent storage of spreadsheets in Firebase.
  • Responsive UI with dark mode for enhanced user experience.

Steps to Run the Project Locally

  1. Clone the Repository:

    git clone https://github.com/Prabal-verma/SIH_INTERNAL_ROUND_1_NERD_NINZAS
    cd SIH_INTERNAL_ROUND_1_NERD_NINZAS/code/SocialCalc-SIH
  2. Install Dependencies:

    npm install
  3. Setup Environment Variables: Create a .env file in the root directory with the following:

    MONGODB_URI=your_mongodb_connection_string
    FIREBASE_CONFIG=your_firebase_configuration
    CLERK_FRONTEND_API=your_clerk_frontend_api_key
  4. Run the Application:

    npm run dev
  5. Access the Application: Open your browser and go to http://localhost:3000.

  6. Docker Setup (Optional):

    • Build the Docker image:
      docker build -t your_image_name .
    • Run the Docker container:
      docker run -p 3000:3000 your_image_name
  7. Scaling with AWS EC2 (Future Plans):

    • Use AWS EC2 clusters for scaling the application in production.
    • Implement auto-scaling policies to handle varying workloads.

Contact

For any queries or further information, please contact the team leader: @Prabal-verma (Prableverma@gmail.com)

About

SocialCalc is a web-based spreadsheet application designed for real-time collaboration. It provides a modern, user-friendly interface, secure authentication, and efficient performance, making it an ideal tool for teams to work together seamlessly on shared data.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages