Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/manthan-sharma-23/shift_
A Code Editor Online
https://github.com/manthan-sharma-23/shift_
cde code-editor code-editor-online docker ide orchestration proxy-server replit shell-script
Last synced: 20 days ago
JSON representation
A Code Editor Online
- Host: GitHub
- URL: https://github.com/manthan-sharma-23/shift_
- Owner: manthan-sharma-23
- Created: 2024-08-01T07:19:03.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-07T15:06:57.000Z (29 days ago)
- Last Synced: 2024-10-16T07:39:58.172Z (20 days ago)
- Topics: cde, code-editor, code-editor-online, docker, ide, orchestration, proxy-server, replit, shell-script
- Language: TypeScript
- Homepage:
- Size: 1.17 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Shift_ - An Online Code Editor
---### (Still under-development)
Shift_ is a sophisticated online code editor integrated with container orchestration, designed to streamline the development process. It provides a unified platform for writing, building, and deploying code with robust container management capabilities.
![Lynx Interface](https://d22otbfo28bxw0.cloudfront.net/synapse-storage/assets/Screenshot%20from%202024-08-21%2002-38-24.png)
## Tech Stack
### Server-Side Development
- **Shell Scripting**: Manages projects, automating tasks related to container management and environment setup.
- **Docker Containers**: Powers the underlying infrastructure, enabling isolated environments for each project.
- **Container Orchestration**: Self-designed APIs using Dockerode and shell environments to manage containers efficiently.
- **NestJS**: Serves as a reverse proxy and container engine, routing requests to appropriate services and managing container lifecycles.
- **WebSockets**: Facilitates real-time communication between the client and server.
- **PostgreSQL**: Used as the primary database to store user data, project configurations, and logs.
- **AWS S3**: Provides persistent file storage, ensuring data is preserved even during container downtimes.### Container Image Development
- **Express Server**: Routes requests within the containerized environment.
- **Sockets**: Manages real-time communication within containers.
- **File System Manager**: Handles file operations, ensuring data integrity and consistency within the container.
- **node-pty**: Utilizes `node-pty` to spawn processes like `child_process` for executing commands, allowing for parallel processing in the otherwise single-threaded Node.js environment.### Client-Side Development
- **React**: The front-end framework used to build a dynamic and responsive user interface.
- **Shadcn UI & Tailwind CSS**: Provides a modern and customizable UI, enhancing the user experience with utility-first CSS.
- **Recoil**: Manages application state efficiently, providing a scalable solution for complex state management.
- **WebSockets**: Enables real-time updates and communication between the client and server.