Sign inSign up

junjiewu0/echo-service

By junjiewu0

โ€ขUpdated almost 2 years ago

HTTP echo service mirroring back request details. Available as Docker image and NPM package.

Image
0

450

junjiewu0/echo-service repository overview

โ Echo Service

GitHub package.json version GitHub Workflow Status Node.js codecov semantic-release ESLint Husky

An HTTP echo service that mirrors back request details. Available as a Docker imageโ  for containerized deployment, as well as an NPM packageโ  for both CLI usage and library integration.

Source code: https://github.com/junjie-w/echo-serviceโ 

โ โญ Quick Start

# Using Docker
docker run -p 3000:3000 junjiewu0/echo-service

# Using NPM (with CLI)
npx @junjie-wu/echo-service

# Using NPM (as library)
npm install @junjie-wu/echo-service

โ ๐Ÿ“š Usage

โ ๐Ÿณ Docker
# Using Pre-built Image
docker pull junjiewu0/echo-service
docker run -p 3000:3000 junjiewu0/echo-service

# For ARM-based machines (Apple Silicon, etc.)
docker pull --platform linux/amd64 junjiewu0/echo-service
docker run --platform linux/amd64 -p 3000:3000 junjiewu0/echo-service

# Using Docker Compose
docker compose up -d

# Build and Run Locally
docker build -t echo-service .
docker run -p 3000:3000 echo-service
โ ๐Ÿ“ฆ NPM Package
โ CLI Usage
npx @junjie-wu/echo-service --port 3000
โ Library Integration
import { createServer } from '@junjie-wu/echo-service';
const server = createServer(3000);
โ ๐Ÿงช Try It Out
# Check service health
curl http://localhost:3000/health

# Echo back request details
curl http://localhost:3000/echo

# Echo with query parameters
curl "http://localhost:3000/echo?name=test"

# Echo with POST data
curl -X POST -H "Content-Type: application/json" \
     -d '{"message": "hello"}' \
     http://localhost:3000/echo
โ ๐Ÿ“‹ Examples

For complete working examples of all usage methods, check out the examplesโ  directory:

git clone https://github.com/junjie-w/echo-service.git
cd echo-service/examples

# Try different examples
npm install
npm run start:docker     # Docker usage
npm run start:cli        # CLI usage
npm run start:lib        # Library usage

โ โšก API Endpoints

EndpointMethodDescription
/GETService info
/healthGETHealth check
/echoALLRequest mirror

โ ๐Ÿ› ๏ธ Development

โ Setup
# Install dependencies
npm install

# Start development server
npm run dev

# Run tests
npm test

# Build for production
npm run build

# Start production server
npm start
โ Commit Convention

This project follows Conventional Commitsโ :

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]

Types: feat, fix, docs, style, refactor, test, chore

โ ๐Ÿค Contributing

Contributions, issues, and feature requests are welcome. Feel free to check issues pageโ .

โ ๐Ÿš€ Distribution

โ ๐Ÿ“„ License

MIT

Tag summary

Content type

Image

Digest

sha256:8c8e0f16aโ€ฆ

Size

47 MB

Last updated

almost 2 years ago

docker pull junjiewu0/echo-service