https://github.com/ismailgunayy/sharecode
A real-time code sharing platform for developers.
https://github.com/ismailgunayy/sharecode
code-collaboration code-sharing realtime socket-io
Last synced: 9 months ago
JSON representation
A real-time code sharing platform for developers.
- Host: GitHub
- URL: https://github.com/ismailgunayy/sharecode
- Owner: ismailgunayy
- License: mit
- Created: 2025-03-21T13:44:05.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2025-04-17T16:33:00.000Z (9 months ago)
- Last Synced: 2025-04-18T06:59:18.882Z (9 months ago)
- Topics: code-collaboration, code-sharing, realtime, socket-io
- Language: TypeScript
- Homepage: https://sharecode.up.railway.app
- Size: 1.16 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ShareCode
A collaborative code sharing platform that allows developers to share their codes in real-time.
> ## **[🚀 Try it live now ](https://sharecode.up.railway.app)**
### Features
- Real-time code sharing with Socket.IO
- Shareable session links for easy collaboration
- Code editor with syntax highlighting, powered by Codemirror
- Minimalist, clean interface built with TailwindCSS
- Redis-backed session storage
> See [TODOS.md](./TODOS.md) for further features, bugs, and improvements.
### Tech Stack
This is a monorepo created with [TurboRepo](https://turbo.build/repo/docs)
#### Frontend
- [React](https://react.dev/)
- [Next.js](https://nextjs.org/)
- [Socket.IO-Client](https://socket.io/docs/v4/client-api/)
- [Codemirror](https://uiwjs.github.io/react-codemirror/)
- [TailwindCSS](https://tailwindcss.com/)
#### Backend
- [Node.js](https://nodejs.org/)
- [Express](https://expressjs.com/)
- [Socket.IO](https://socket.io/)
- [Redis](https://redis.io/)
#### CI/CD
- [GitHub Actions](https://github.com/features/actions) workflows for client and server deployments
- Automated deployments to [Railway.app](https://railway.app)
- Type checking and linting on push to master
### Getting Started with Docker Setup
#### Requirements
- Node.js v22.14.0
- Yarn
- Docker
Create following files:
```bash
# apps/client/.env
API_URL=http://localhost:8023/api
WS_SERVER_URL=ws://localhost:8023
```
```bash
# apps/server/.env
NODE_ENV=development
PORT=8023
CLIENT_ORIGIN=http://localhost:3023
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=password
```
```bash
# apps/server/redis.conf
requirepass password
port 6379
bind 0.0.0.0
```
#### Running the development environment
```bash
docker compose -f docker-compose.dev.yml up
```
Go to [http://localhost:3023](http://localhost:3023)
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.