Skip to content

Commit f3cdf24

Browse files
committed
Updated README
1 parent 87697f1 commit f3cdf24

File tree

1 file changed

+48
-27
lines changed

1 file changed

+48
-27
lines changed

README.md

Lines changed: 48 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,38 @@
11
# Jump Service
22

3-
A high-performance, Redis-backed temporary payload storage service with rate limiting.
3+
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
4+
[![Rust](https://github.com/rust-lang/rust/workflows/CI/badge.svg)](https://github.com/rust-lang/rust/actions)
45

5-
## Features
6+
A high-performance, Redis-backed temporary payload storage service with built-in rate limiting and automatic expiration. Built with Rust for optimal performance and reliability.
67

7-
- Create, retrieve, and delete temporary payloads
8-
- Built-in rate limiting
9-
- Automatic payload expiration
10-
- High performance with Redis backend
11-
- Comprehensive logging
12-
- Detailed error handling
8+
<p align="center">
9+
<img src="docs/assets/jump-logo.png" alt="Jump Service Logo" width="200"/>
10+
</p>
11+
12+
## What is Jump?
13+
14+
Jump is a modern solution to ephemeral data storage and sharing. It provides a secure, fast, and reliable way to store temporary data that automatically expires after a set duration. Whether you need to share sensitive information, temporary tokens, or any other short-lived data, Jump makes it simple and secure.
15+
16+
### Why Jump?
17+
18+
- **High Performance**: Built with Rust for optimal speed and efficiency
19+
- **Secure**: Data automatically expires and is never permanently stored
20+
- **Lightning Fast**: Redis-backed storage for sub-millisecond access
21+
- **Rate Limited**: Built-in protection against abuse
22+
- **Type Safe**: Strict MIME type validation for content
23+
- **RESTful API**: Simple and intuitive API design
24+
25+
## How Does It Work?
26+
27+
1. **Create**: Send your data with an optional expiry time
28+
2. **Share**: Get a unique hash ID for your data
29+
3. **Access**: Use the hash ID to retrieve the data
30+
4. **Auto-Expire**: Data is automatically deleted after expiry
31+
32+
Jump is:
33+
- **Ephemeral**: All data automatically expires
34+
- **Fast**: Redis-backed for high performance
35+
- **Efficient**: Optimized for minimal resource usage
1336

1437
## Quick Start
1538

@@ -73,12 +96,10 @@ GET /api/v1/payloads/{hash_id}
7396
DELETE /api/v1/payloads/{hash_id}
7497
```
7598

76-
For detailed API documentation, see [API.md](docs/API.md).
99+
[View Full API Documentation](docs/API.md)
77100

78101
## Configuration
79102

80-
The service can be configured using environment variables:
81-
82103
```bash
83104
# Server configuration
84105
PORT=8080
@@ -98,6 +119,22 @@ MAX_PAYLOAD_SIZE=10485760 # 10MB
98119
DEFAULT_EXPIRY=86400 # 24 hours
99120
```
100121

122+
## Project Structure
123+
124+
```
125+
src/
126+
├── api/ # HTTP API layer
127+
│ ├── middleware/ # Rate limiting, logging
128+
│ └── v1/ # API version 1 endpoints
129+
├── application/ # Business logic
130+
│ ├── use_cases/ # Core operations
131+
│ └── dto/ # Data transfer objects
132+
├── domain/ # Core domain models
133+
├── infrastructure/ # External services
134+
│ └── redis/ # Redis implementation
135+
└── main.rs # Application entry point
136+
```
137+
101138
## Development
102139

103140
### Running Tests
@@ -126,22 +163,6 @@ The service uses `tracing` for structured logging. Log levels can be configured
126163
RUST_LOG=debug cargo run
127164
```
128165

129-
## Project Structure
130-
131-
```
132-
src/
133-
├── api/ # HTTP API layer
134-
│ ├── middleware/ # Rate limiting, logging
135-
│ └── v1/ # API version 1 endpoints
136-
├── application/ # Business logic
137-
│ ├── use_cases/ # Core operations
138-
│ └── dto/ # Data transfer objects
139-
├── domain/ # Core domain models
140-
├── infrastructure/ # External services
141-
│ └── redis/ # Redis implementation
142-
└── main.rs # Application entry point
143-
```
144-
145166
## Contributing
146167

147168
1. Fork the repository

0 commit comments

Comments
 (0)