Populars: Dades actualitzades el 26 d’octubre del 2026

Categories

Internet1.355
Comunicació321
Àudio i vídeo898
Gràfics i disseny539
Ofimàtica i productivitat1.120
Eines per a desenvolupadors3.132
Eines d’IA527
Seguretat i privadesa385
Eines del sistema3.113
Jocs523
Educació i ciència239
Xarxa i TI284

apic: baixar versions anteriors

A lightweight, Git-friendly CLI tool for designing and collaborating on API contracts.

Rizki Rakasiwi API i desenvolupament web #100 API i desenvolupament web

Aquí hi ha 4 versions d’apic, des de 16 de juliol del 2026 fins a l’actual, 0.5.1. Cadascuna enllaça amb els instal·ladors del mateix desenvolupador.

2026: 4 4 26
VersióDataMidaFitxers
0.5.1Darrera versió 28 d’agost del 2026 — 64 bits ZIP
Notes de la versió
A packaging release on top of 0.5.0, plus one change to how the git panel presents a diff. The CLI, the TUI, and the contract format are unchanged, so existing projects need no migration.

## Installable from apt on Ubuntu

`packaging/debian/` builds `apic` and `apic-gui` as `.deb` packages for Ubuntu 26.04 on amd64 and arm64, published through the PPA `ppa:rizukirr/apic`.

Unlike the AUR and Copr packages, which ship prebuilt binaries, Launchpad compiles from source on builders with no network access. `mk-orig.sh` vendors all 566 crate dependencies into the orig tarball and verifies the vendor tree is internally consistent before writing it. `apic-gui` now declares the `git` runtime dependency it has always needed.

Getting there meant moving `eframe` and `egui_extras` back to 0.35 and dropping the declared MSRV from 1.97 to 1.92. `epaint 0.36.1` requires Rust 1.95, while Ubuntu 26.04 ships 1.93 as its newest archive toolchain, which put the desktop GUI out of reach of the current LTS. The downgrade needed no source change and the full suite passes on 1.92.

A new `msrv` job in CI builds and tests the workspace on the minimum supported version, so a routine dependency bump cannot silently push the project past what the Ubuntu archive can compile.

## Git panel:field list first, real diff behind the toggle

Selecting a changed contract now opens on its field list, which says what changed about the contract, rather than on the whole file with the changed lines tinted.

The checkbox that read `Show changed fields` now reads `Show raw diff` and gives git's own output, with hunk headers and `+`/`-` markers, instead of the entire file. It stays where you put it when you click a different file rather than resetting each time.

Anything the field list cannot describe falls through to the diff:a non-contract file, an untracked file, or a change that is only formatting. A selection never lands on an empty pane.

One fix underneath this. The diff renderer kept only the first hunk header and printed every later one a character short, which nothing noticed while the panel asked git for the whole file as a single hunk. It now keeps the markers git emits and colors each `@@` header.

## Install

Prebuilt binaries for Linux, macOS, and Windows are attached below, each with a `.sha256`. The desktop GUI also ships as a macOS `.app` bundle and a Windows MSI.

Arch users can install `apic-bin` from the AUR, Fedora users from the `apic-cli` Copr, and Windows users through winget as `rizukirr.apic` or `rizukirr.apic-gui`. Those manifests currently track 0.5.0.
0.5.0 27 d’agost del 2026 — 64 bits ZIP
Notes de la versió
The desktop GUI gains a git panel. The CLI, the TUI and the contract format are unchanged, so existing projects need no migration and nothing has to be updated to keep working.

## Git panel in the desktop GUI

A second sidebar tab, next to Explorer, that appears when the project sits inside a git repository. It shells out to your own `git`, so hooks, credential helpers and config behave exactly as they do in a terminal.

**Status and staging.** Changed files listed under `CONFLICTS`, `STAGED` and `UNSTAGED`, nested by folder like the Explorer tree, scoped to your contract working directory plus `.apic/`. Changes elsewhere in the repository are counted on a line you can expand rather than hidden. Stage, unstage and discard with `+`, `-` and `x` on any file or folder, then commit. Discard is offered for tracked files only and always names what it will revert.

**Diffs.** Selecting a file shows it whole with changed lines coloured. A toggle switches to a field-level summary that names each changed field and its old and new value, which is the better view for a schema change buried in a large contract.

**Branches.** A dropdown lists every local branch. Picking one checks it out, `+` creates one, `x` deletes one behind a confirmation. Deleting is never forced, so git's refusal to drop unmerged work is surfaced rather than overridden. A checkout is refused while a contract has unsaved edits, and after a successful switch the open contract is reloaded from the new branch or closed if it does not exist there.

**Conflict resolution.** A conflicted file opens a resolver:each conflict block in file order with both sides shown, and `Accept ours`, `Accept theirs` or `Accept both` per block. A live preview shows the resulting file as you choose. Nothing is written until Resolve, which stays disabled until every block is decided, then writes the file and stages it.

Not included:merge, pull, fetch, rebase, stash and remote branches.

## Under the hood

`apic-gui` was restructured into `app`, `features` and `ui` layers. `main.rs` was split into app modules, `ContractsState` and `ShellState` were extracted from `App`, panel frames moved into a shell, and the widget and theme modules were split into components, focus, colours, spacing and typography.

A suite of git wiring tests was added, driving a real `App` against a real temporary repository with no rendering. It caught several defects that unit tests on individual functions could not, including one that only appeared on macOS.

Dependencies are on their latest stable versions, including eframe and egui 0.36.

## Fixed

• Scope paths are resolved through symlinks before comparison, closing a case where a symlinked directory made the git panel treat in-scope files as out of scope.
• Unstaging an untracked file works correctly, instead of leaving it staged.

## Install

Prebuilt binaries for Linux, macOS and Windows are attached below, each with a `.sha256`. The desktop GUI ships as a Windows MSI and a macOS `.app` bundle. See the README for package manager options.
0.4.1 23 d’agost del 2026 — 64 bits ZIP
Notes de la versió
## apic 0.4.1

A maintenance release on top of 0.4.0. There are **no contract format changes and no new commands**, so existing 0.4.0 projects keep working untouched and no migration step is needed.

The substance of this release is the **eframe/egui 0.35 upgrade** behind the desktop GUI, a dependency refresh across the whole workspace, and a higher minimum supported Rust version. If you only use the CLI/TUI (`apic`), this is a drop-in update with refreshed dependencies underneath.

### Desktop GUI moves to eframe/egui 0.35

`apic-gui` now builds on eframe/egui **0.35**, up from 0.33.3, including the Windows-only wgpu (DirectX) renderer feature that lets the GUI launch in driverless environments such as VMs, RDP sessions, and winget's validation sandbox. Getting there meant following three breaking changes in egui:

• **`App::update` became `App::ui`.** `eframe::App` no longer exposes `update(&mut self, ctx, frame)`. The GUI implements `ui(&mut self, ui, frame)` instead, so the root of the application is now a `Ui` with no margin and no background rather than a `Context`. Panels attach to that root `Ui`, while the native file dialogs and the modal dialogs keep operating on the `Context`, reached through `ui.ctx()`.
• **Panels are unified.** `TopBottomPanel` and `SidePanel` are replaced by a single `egui::Panel` type, so the nav bar, the status bar, and the contract sidebar are built with `Panel::top`, `Panel::bottom`, and `Panel::left`. The sidebar's `default_width`/`min_width` became `default_size`/`min_size`, and nested panels use `show` in place of `show_inside`.
• **`TextEdit::frame` takes a `Frame`.** The old boolean form is gone, so every frameless inline input in the editor (endpoint name, description, URL, response code, response title, table cells, and the JSON editor) now passes `egui::Frame::NONE` explicitly.

### The neon theme survives a light-mode host

egui 0.35 dropped the single global `Context::set_style` in favour of per-theme styles, which would have let the host OS light/dark preference bleed through and partially override the app's palette. `apply_theme` now installs the dark monospace neon palette into **every** theme variant via `all_styles_mut`, so the GUI looks the same regardless of what the desktop environment reports.

### Minimum supported Rust version raised to 1.97

The previous floor was 1.88. The new floor is **Rust 1.97**, declared uniformly across all three crates (`apic-cli`, `apic-core`, and `apic-gui`), so any toolchain that can build one of them can build the whole workspace.

This only affects building from source. The prebuilt binaries and the packaged builds are unaffected. The README's build-from-source instructions were corrected to state 1.97, having still claimed 1.88.

### Dependencies refreshed

Bumped, and pinned down to the patch level so a fresh `cargo build` resolves the same versions CI tested:

• `clap` 4.6.1 to **4.6.4**
• `serde` 1.0.228 to **1.0.229**
• `serde_json` 1.0.150 to **1.0.151**
• `eframe` and `egui_extras` 0.33 to **0.35**

Three dependencies that were previously loose minor requirements now carry explicit patch floors:`libc` **0.2.189**, `ratatui` **0.30.2**, and `ratatui-textarea` **0.9.2**.

### Fixed

• The JSON syntax highlighter clones out of `egui_extras`' frame cache, matching the 0.35 API and keeping the cached layout job valid for the remainder of the frame.
• The GUI frame-timing test drives the app through `Context::run_ui` rather than the removed `Context::run`, so it now exercises the same root-`Ui` code path that eframe hands the real application.

### Documentation and tooling

• The `apic_core::fuzzy::fuzzy_find` example is a real compiled doctest instead of an ignored block, so the documented usage is verified on every test run.
• The Flatpak packaging guide in `packaging/flatpak/README.md` was rewritten to match the current update flow.
• CI and the release workflow use `actions/checkout@v5` in place of `v4`, and the runner images were refr
0.3.6 16 de juliol del 2026 — 64 bits ZIP

El més popular a API i desenvolupament web

Mostra-ho tot
  1. BrunoAPI i desenvolupament web · Anoop M D
  2. InsomniaAPI i desenvolupament web · Kong
  3. YaakAPI i desenvolupament web · Mountain Loop Labs
  4. RenderDocAPI i desenvolupament web · Baldur Karlsson
  5. Altair GraphQL ClientAPI i desenvolupament web · Samuel Imolorhe
  6. HTTPieAPI i desenvolupament web · HTTPie
  7. ResponsivelyAppAPI i desenvolupament web · Responsively
  8. HurlAPI i desenvolupament web · Orange-OpenSource
  9. SoapUIAPI i desenvolupament web · SmartBear Software
  10. JACK2API i desenvolupament web · jackaudio.org

Més programes de Rizki Rakasiwi

Mostra-ho tot
  • apic-guiAPI i desenvolupament web · Rizki Rakasiwi

Etiquetes

Comparteix