pesde/README.md

79 lines
2.5 KiB
Markdown
Raw Permalink Normal View History

2024-03-16 16:31:27 +00:00
<br>
<div align="center">
<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
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
- Downloading packages from Wally registries
2024-03-04 20:18:49 +00:00
## Installation
pesde can be installed from GitHub Releases. You can find the latest release [here](https://github.com/daimond113/pesde/releases).
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
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
manually to add metadata such as authors, description, and license.
> **Warning**
> 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.
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-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
You can self-host the registry by using the default implementation in the `registry` folder, or by creating your own implementation. The API
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-03-04 20:59:19 +00: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/).