Skip to content

Commit ee2615a

Browse files
authored
chore(573): Update README (#602)
* #573 - vertically center the EmptyWildWest image again * #573 - update readme with images * #573 - consolidate feature table
1 parent f84323f commit ee2615a

File tree

5 files changed

+69
-14
lines changed

5 files changed

+69
-14
lines changed

README.md

Lines changed: 68 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,44 @@
11
[![CI Pipeline](https://github.com/EXXETA/trufos/actions/workflows/ci.yml/badge.svg)](https://github.com/EXXETA/trufos/actions/workflows/ci.yml)
22
![GitHub contributors](https://img.shields.io/github/contributors/EXXETA/trufos)
33
[![Discord](https://img.shields.io/discord/1328262093903892530?logo=discord&label=Discord&cacheSeconds=60)](https://discord.gg/sb4nfdevpW)
4-
![version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2FEXXETA%2Frufus%2Frefs%2Fheads%2Fmain%2Fpackage.json&query=%24.version&label=version)
4+
![version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2FEXXETA%2Ftrufos%2Frefs%2Fheads%2Fmain%2Fpackage.json&query=%24.version&label=version)
55

66
<h1 align="center">Trufos - The REST Utility, free and Open Source</h1>
77
<p align="center">
88
A REST client that is both easy to use, efficient, and extendable.
99
</p>
1010

1111
As many REST clients exist in the ecosystem, Trufos aims to provide an out-of-the-box experience
12-
that is fast, user-friendly, and customizable. Trufos intends to offer the following features:
12+
that is fast, user-friendly, and customizable. Below is an overview of current and planned features:
13+
14+
| Feature | Status | Notes |
15+
| --------------------------------------------- | -------------- | -------------------------------------------------------- |
16+
| Project maturity | 🚧 Early Stage | Active development; APIs & data shapes may evolve |
17+
| Offline usage (no registration / login) | ✅ Implemented | Works fully offline; all data stored locally |
18+
| Cross-platform (Win / macOS / Linux) | ✅ Implemented | Electron-based distribution with native packaging |
19+
| Handling of large request & response payloads | ✅ Implemented | Streamed & chunked processing keeps UI responsive |
20+
| Version control-friendly collections | ✅ Implemented | Collections stored as JSON for easy diff & collaboration |
21+
| Third party collection import | 🚧 Partially | Currently supports Postman |
22+
| Environment & variable management | ✅ Implemented | Named environments with scoped variables |
23+
| Authentication (JWT, OAuth 2.0, Basic) | ✅ Implemented | Strategy factory incl. OAuth2 client credentials |
24+
| Scripting (custom request/response handling) | 🛠 Planned | Script engine & sandbox design in progress |
25+
| Plugin architecture / extensions | 🛠 Planned | Extensible API for third-party integrations |
26+
27+
If you would like to contribute to this project, please check out our [Contributing Guidelines](./CONTRIBUTING.md).
1328

14-
- Offline usage: No registration or login required
15-
- Smooth handling of large request and response objects
16-
- Version control-friendly storage of requests and collections, facilitating easy collaboration
17-
- Custom handling of HTTP requests and responses via script injection
18-
- Support for various authentication methods, including JWT, OAuth, and basic authentication
19-
- Extendable plugin architecture for additional features and integrations
29+
![Screenshot nothing selected](docs/images/Screenshot-nothing-selected.png)
2030

21-
**Current Development Status**: Trufos is still at an early stage of development. Be aware of this
22-
when using Trufos under production conditions. If you would like to contribute to this project,
23-
please check out our [Contributing Guidelines](./CONTRIBUTING.md).
31+
![Screenshot request and response with variable](docs/images/Screenshot-request-variable.png)
2432

25-
![Screenshot nothing selected](docs/images/Screenshot-nothing-selected.png)
33+
## Installation
34+
35+
Grab the latest release from the [GitHub Releases](https://github.com/EXXETA/trufos/releases) page and install it for your platform:
36+
37+
- Windows: Download the `Setup.exe` installer
38+
- macOS: Download the `.dmg` image
39+
- Linux: Download the `.zip` archive (native `.deb` packaging planned)
2640

27-
![Screenshot Request selected](docs/images/Screenshot-Request.png)
41+
No account or telemetry is required—Trufos runs locally and keeps your data on your machine.
2842

2943
## Requirements
3044

@@ -62,6 +76,47 @@ Here’s a simple example of how to add and utilize an endpoint:
6276
4. Optionally, add headers and body content.
6377
5. Click "Send Request" and review the response in the results area.
6478

79+
### Importing Collections
80+
81+
You can import existing Postman collections to migrate quickly:
82+
83+
1. Open the collection import view.
84+
2. Select the Postman collection file or directory.
85+
3. Confirm import; Trufos will convert and persist it under a folder named after the collection title.
86+
87+
Collections are saved in a version-control-friendly JSON structure so you can diff and review changes.
88+
89+
### Environments & Variables
90+
91+
Define multiple environments (e.g., `dev`, `staging`, `prod`) each with its own variables. Selecting an environment scopes variable resolution for requests. Variables and environments are also stored as JSON ensuring easy collaboration.
92+
93+
### Large Payload Streaming
94+
95+
Trufos uses IPC push streams to process large request/response bodies incrementally. This avoids blocking the UI and keeps memory usage lower when dealing with multi-megabyte payloads.
96+
97+
### Development Commands
98+
99+
| Command | Description |
100+
| --------------------- | ------------------------------------------------- |
101+
| `yarn start` | Run the app in development mode (Electron + Vite) |
102+
| `yarn make` | Package distributables for the current OS |
103+
| `yarn test` | Execute Vitest test suite |
104+
| `yarn lint` | Run ESLint over TypeScript & React sources |
105+
| `yarn prettier` | Format code (TS/TSX) with Prettier |
106+
| `yarn prettier-check` | Check formatting without writing changes |
107+
108+
### Roadmap (High-Level)
109+
110+
| Item | Status | Notes |
111+
| ----------------------------------------- | ------- | ------------------------------------------------ |
112+
| Scripting engine (request/response hooks) | Planned | Execution sandbox & dependency management design |
113+
| Plugin architecture | Planned | Public extension API & lifecycle hooks |
114+
| More auth strategies (Hawk, NTLM, etc.) | Planned | Evaluating demand & libraries |
115+
| Linux native packaging (`.deb`) | Planned | Electron Forge configuration WIP |
116+
| Improved collection diff tooling | Planned | Visual diff & merge assistance |
117+
| Performance profiling view | Planned | Inspect timing & size insights |
118+
| Accessibility enhancements | Planned | WCAG compliance audit scheduled |
119+
65120
## FAQ
66121

67122
- Where can I find the saved Requests?

docs/images/Screenshot-Request.png

-137 KB
Binary file not shown.
13.7 KB
Loading
321 KB
Loading

src/renderer/view/RequestWindow.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export function RequestWindow() {
1717

1818
if (!requestSelected) {
1919
return (
20-
<div className="flex flex-auto flex-col items-center justify-center p-6">
20+
<div className="flex h-full w-full flex-col items-center justify-center p-6">
2121
<EmptyWildWest />
2222
<span className="mt-2 text-center">
2323
<a

0 commit comments

Comments
 (0)