2024-03-16 16:31:27 +00:00
|
|
|
<br>
|
|
|
|
|
|
|
|
<div align="center">
|
2024-03-16 17:12:49 +00:00
|
|
|
<img src="https://raw.githubusercontent.com/daimond113/pesde/master/website/static/logo.svg" alt="pesde" width="200" />
|
2024-03-16 16:31:27 +00:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<br>
|
2024-03-04 20:18:49 +00:00
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
# Important
|
|
|
|
|
|
|
|
> pesde is currently being rewritten, and this new version is not yet ready for use. You can find the stable version in the `master` branch.
|
|
|
|
|
2024-03-04 20:18:49 +00:00
|
|
|
pesde is a package manager for Roblox that is designed to be feature-rich and easy to use.
|
|
|
|
Currently, pesde is in a very early stage of development, but already supports the following features:
|
|
|
|
|
|
|
|
- Managing dependencies
|
|
|
|
- Re-exporting types
|
|
|
|
- `bin` exports (ran with Lune)
|
|
|
|
- Patching packages
|
2024-03-24 13:31:11 +00:00
|
|
|
- Downloading packages from Wally registries
|
2024-03-04 20:18:49 +00:00
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
pesde can be installed from GitHub Releases. You can find the latest
|
|
|
|
release [here](https://github.com/daimond113/pesde/releases).
|
2024-03-04 20:18:49 +00:00
|
|
|
It can also be installed by using [Aftman](https://github.com/LPGhatguy/aftman).
|
|
|
|
|
2024-03-16 16:31:27 +00:00
|
|
|
## Usage
|
|
|
|
|
|
|
|
pesde is designed to be easy to use. Here are some examples of how to use it:
|
|
|
|
|
|
|
|
```sh
|
|
|
|
# Initialize a new project
|
|
|
|
pesde init
|
|
|
|
|
|
|
|
# Install a package
|
|
|
|
pesde add daimond113/pesde@0.1.0
|
|
|
|
|
|
|
|
# Remove a package
|
|
|
|
pesde remove daimond113/pesde
|
|
|
|
|
|
|
|
# List outdated packages
|
|
|
|
pesde outdated
|
|
|
|
|
|
|
|
# Install all packages
|
|
|
|
pesde install
|
|
|
|
|
|
|
|
# Search for a package
|
|
|
|
pesde search pesde
|
|
|
|
|
|
|
|
# Run a binary
|
|
|
|
pesde run daimond113/pesde
|
|
|
|
|
|
|
|
# Run a binary with arguments
|
|
|
|
pesde run daimond113/pesde -- --help
|
|
|
|
```
|
|
|
|
|
|
|
|
## Preparing to publish
|
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
To publish you must first initialize a new project with `pesde init`. You can then use the other commands to manipulate
|
|
|
|
dependencies, and edit the file
|
2024-03-16 16:31:27 +00:00
|
|
|
manually to add metadata such as authors, description, and license.
|
|
|
|
|
|
|
|
> **Warning**
|
2024-07-12 23:09:37 +01:00
|
|
|
> The pesde CLI respects the `.gitignore` file and will not include files that are ignored. The `.pesdeignore` file has
|
|
|
|
> more power over the `.gitignore` file, so you can unignore files by prepending a `!` to the pattern.
|
2024-03-16 16:31:27 +00:00
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
The pesde CLI supports the `.pesdeignore` file, which is similar to `.gitignore`. It can be used to include or exclude
|
|
|
|
files from the package.
|
2024-03-16 16:31:27 +00:00
|
|
|
|
2024-04-03 20:16:21 +01:00
|
|
|
## Documentation
|
|
|
|
|
|
|
|
For more information, you can check the [documentation](https://pesde.daimond113.com/docs).
|
|
|
|
|
2024-03-04 20:59:19 +00:00
|
|
|
## Registry
|
2024-03-04 20:18:49 +00:00
|
|
|
|
2024-03-04 20:59:19 +00:00
|
|
|
The main pesde registry is hosted on [fly.io](https://fly.io). You can find it at https://registry.pesde.daimond113.com.
|
2024-03-04 20:18:49 +00:00
|
|
|
|
2024-03-16 16:31:27 +00:00
|
|
|
### Self-hosting
|
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
You can self-host the registry by using the default implementation in the `registry` folder, or by creating your own
|
|
|
|
implementation. The API
|
2024-03-16 16:31:27 +00:00
|
|
|
must be compatible with the default implementation, which can be found in the `main.rs` file.
|
|
|
|
|
2024-03-04 20:18:49 +00:00
|
|
|
## Previous art
|
|
|
|
|
2024-07-12 23:09:37 +01:00
|
|
|
pesde is heavily inspired by [npm](https://www.npmjs.com/), [pnpm](https://pnpm.io/), [Wally](https://wally.run),
|
|
|
|
and [Cargo](https://doc.rust-lang.org/cargo/).
|