Files

61 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

# [decomp.dev](https://decomp.dev)
Decompilation progress website & GitHub bot.
2025-09-07 22:30:29 -06:00
For more information, see the [wiki](https://decomp.wiki/tools/decomp-dev).
## Backend Setup
1. Install Rust via [rustup](https://rustup.rs/):
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
2. Clone the repository:
```bash
git clone https://github.com/encounter/decomp.dev.git
cd decomp.dev
```
3. Copy `config.example.yml` to `config.yml`:
```bash
cp config.example.yml config.yml
```
4. [Create a new GitHub personal access token](https://github.com/settings/tokens/new?description=decomp.dev&scopes=public_repo) with scope `public_repo`. Set it in `config.yml`:
```yaml
github:
token: ghp_abcd1234abcd1234abcd1234abcd1234abcd
```
5. Install [bacon](https://dystroy.org/bacon/):
```bash
cargo install --locked bacon
```
6. Run the backend with automatic rebuild on changes:
```bash
bacon
```
When modifying Rust code, it will take a few seconds to build and restart the server.
Once the server updates, the browser page will automatically reload.
## Frontend Setup
1. Install dependencies:
```bash
npm install
```
2. Start the frontend development server:
```bash
npm start
```
When the frontend development server is running, changes to files under `css/`, `js/` and `assets/` will live reload in the browser.
## Testing
When running both the backend and frontend, the site will be accessible at http://localhost:3000.
By default, `server.dev_mode` in `config.yml` is enabled, allowing any visitor to log in as a superuser without authentication.
To add projects to the site, visit http://localhost:3000/manage/new, using an existing project from [decomp.dev](https://decomp.dev/) as reference:
![New project page](/docs/manage_new.png)