Skip to content

simplysandeepp/Stateful

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

91 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Stateful πŸš€

Your Ultimate Coding Companion & CS Study Hub.
Master Data Structures, Algorithms, and Core Computer Science subjects with interactive visualizations, a powerful online compiler, and comprehensive study tools.

Deployed on Vercel React TypeScript Vite Firebase Tailwind CSS


πŸ“– Table of Contents


🌟 Overview

Stateful (formerly Algorithmm) is a comprehensive Computer Science Education Platform designed to bridge the gap between theory and practice. Whether you are a student mastering DSA, a developer practicing competitive programming, or an admin managing a coding cohort, Stateful provides the tools you need in one unified, glassmorphic interface.

Keywords: Online Compiler, Algorithm Visualizer, React Admin Dashboard, CS Education, Coding Interface, Pomodoro Timer, Study Tools, Firebase App.


✨ Key Features

πŸ›‘οΈ Admin Dashboard

A powerful, glassmorphic control center for platform administrators.

  • User Management:
    • View Users: Searchable table with Name, ID, Phone, and Role.
    • Role Management: Instantly toggle users between User and Admin roles via dropdown.
    • Security: Reset user passwords via email or delete user profiles permanently.
  • File Management:
    • Inspect Code: View and edit user-submitted code files.
    • Create/Delete: Admins can create new files for users or delete existing ones directly from the dashboard.
  • Analytics: Visualization of user registration and file activity.

πŸ–₯️ Online Compiler & IDE

A robust, browser-based Integrated Development Environment.

  • Powered by Monaco Editor: The same engine as VS Code.
  • Multi-Language Support: C, C++, Java, Python.
  • Cloud Sync: Code is automatically saved to Firebase Firestore.
  • Piston API: Secure, sandboxed code execution for safe running of untrusted code.
  • Custom Input: Full support for stdin inputs.

🎨 Algorithm Visualizer

Interactive animations to demystify complex data structures.

  • Framer Motion: Smooth, 60fps animations for sorting and pathfinding algorithms.
  • Algorithms Covered: Bubble Sort, Merge Sort, Quick Sort, BFS, DFS, Dijkstra, and more.
  • Step-by-Step: Control execution speed and step through algorithms manually.
  • Code & Theory: Side-by-side view of implementation code and theoretical explanations.

⏳ Study Tools (Timer & Clock)

Productivity tools built directly into the platform to keep you focused.

  • Pomodoro Timer: Customizable focus and break intervals to maximize productivity.
  • Stopwatch: Precision timing with lap functionality.
  • Live Clock: Aesthetic full-screen clock synced with IST, perfect for desk setups.

πŸ› οΈ Tech Stack

Frontend

  • Framework: React 19.2.0 (Vite)
  • Language: TypeScript 5.9.3
  • Styling: Tailwind CSS 3.4.1 (Glassmorphism UI)
  • Animations: Framer Motion 12.23.26
  • Routing: React Router 7.11.0
  • State: Zustand & React Context

Backend & Services

  • Auth: Firebase Authentication (Google, GitHub, Email)
  • Database: Firebase Firestore (NoSQL)
  • Execution: Piston API
  • Hosting: Vercel

πŸš€ Getting Started

Follow these steps to set up the project locally.

Prerequisites

  • Node.js v18+
  • npm or yarn

Installation

  1. Clone the repository

    git clone https://github.com/simplysandeepp/Algorithmm.git
    cd Algorithmm
  2. Install Dependencies

    cd frontend
    npm install
  3. Environment Setup Create a .env file in frontend/ with your Firebase config:

    VITE_FIREBASE_API_KEY=your_key
    VITE_FIREBASE_AUTH_DOMAIN=your_domain
    VITE_FIREBASE_PROJECT_ID=your_id
    VITE_FIREBASE_STORAGE_BUCKET=your_bucket
    VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender
    VITE_FIREBASE_APP_ID=your_app_id
  4. Run Dev Server

    npm run dev

    Open http://localhost:5173 to view the app.


🀝 Contributing

Contributions are welcome!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

Copyright (c) 2026 Sandeep Prajapati. All rights reserved.

This project is proprietary. Cloning is allowed only for personal reference or evaluation. Any reuse, modification, redistribution, or commercial/production use requires prior written permission from the copyright owner. See the LICENSE file for full terms.


πŸ“ž Contact

Sandeep Prajapati - sandeepp.in

Project Link: https://github.com/simplysandeepp/stateful

About

I'm building an exceptional platform for data structures, algorithms, and computer science fundamentals with interactive visualizations and powerful development tools.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors