Skip to content

Commit 1061164

Browse files
committed
Rename all packages from @mjackson scope to @remix-run
Also, remove support for publishing to JSR for now. We can always add it back later.
1 parent c260e93 commit 1061164

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+462
-311
lines changed

.github/workflows/build.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ on:
1414
- 'v3'
1515

1616
jobs:
17-
build-and-test:
17+
test:
1818
runs-on: ubuntu-latest
1919

2020
steps:
@@ -35,8 +35,8 @@ jobs:
3535
- name: Install dependencies
3636
run: pnpm install
3737

38-
- name: Build packages
39-
run: pnpm build
38+
# - name: Build packages
39+
# run: pnpm build
4040

4141
- name: Run tests
4242
run: pnpm test

CLAUDE.md

Lines changed: 32 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,42 @@
1-
## Intro
1+
This is the monorepo for Remix, a cutting edge web framework. All packages are contained in the `./packages` dir.
22

3-
Remix is a web framework.
3+
In addition to this file, see `CONTRIBUTING.md` for further guidelines about developing in this repository.
44

55
## Development
66

7-
Development uses Node.js 24. All tests should run without requiring a build first.
7+
You should be able to run the tests without building first.
88

99
```sh
10-
# Run the build
10+
# Run all tests
11+
$ pnpm test
12+
# Run the tests for a specific package
13+
$ pnpm --filter @remix-run/headers run test
14+
15+
# Build all packages
1116
$ pnpm run build
1217
# Build a specific package
13-
$ cd packages/headers && pnpm run build
18+
$ pnpm --filter @remix-run/headers run build
19+
```
1420

15-
# Run the tests
16-
$ pnpm test
17-
# Run the tests for a specific package
18-
$ cd packages/headers && pnpm test
21+
## Testing
22+
23+
- Use `node:test` and `describe/it` style to organize test suites
24+
- Make assertions using `node:assert/strict`
25+
26+
## Releasing
27+
28+
The release process is a two-step process. First, we tag a release. Then, we publish it.
29+
30+
To cut a release:
31+
32+
```sh
33+
# To bump the headers package to the next minor release
34+
$ pnpm run tag-release headers minor
35+
# Then publish it using the newly created tag
36+
$ pnpm run publish-release [email protected]
1937
```
38+
39+
## Code Style
40+
41+
- Prefer `let` for all variables, unless they are defined in global or module-level scope
42+
- Only make comments to explain unusual code, do not comment on obvious code

CONTRIBUTING.md

Lines changed: 34 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,56 @@
1-
Welcome to `remix-the-web`! We're excited to have you contribute.
1+
Welcome to Remix! We're excited to have you contribute.
22

33
This guide will help you get started.
44

55
## Setting Up Your Environment
66

7-
To get started, you'll need `pnpm`. If you don't have it yet, you can [install `pnpm` here](https://pnpm.io/installation).
7+
We develop Remix using [pnpm](https://pnpm.io) on Node 24.
88

99
If you're using [VS Code](https://code.visualstudio.com/), we recommend installing the [`node:test runner` extension](https://marketplace.visualstudio.com/items?itemName=connor4312.nodejs-testing) for a smooth testing experience.
1010

11-
Once that's set up, run `pnpm install` to get all the project dependencies. You can then run `pnpm build` to build the project and `pnpm test` to run all tests.
11+
Once that's set up, run `pnpm install` to get all the project dependencies.
12+
13+
## Testing
14+
15+
All tests run directly from source. This makes it easy to use breakpoint debugging when running tests. This also means you should not need to run a build before running the tests.
16+
17+
```sh
18+
# Run all tests
19+
$ pnpm test
20+
# Run the tests for a specific package
21+
$ pnpm --filter @remix-run/headers run test
22+
```
23+
24+
## Building
25+
26+
All packages are built using a combination of tsc and esbuild.
27+
28+
```sh
29+
# Build all packages
30+
$ pnpm run build
31+
# Build a specific package
32+
$ pnpm --filter @remix-run/headers run build
33+
```
34+
35+
All packages are published with TypeScript types along with both ESM and CJS module formats.
1236

1337
## Making Changes
1438

15-
All our packages live in the [`packages` directory](https://github.com/mjackson/remix-the-web/tree/main/packages). At a minimum, each package typically includes:
39+
Packages live in the [`packages` directory](https://github.com/remix-run/remix/tree/v3/packages). At a minimum, each package includes:
1640

17-
- `CHANGELOG.md`: A log of what's changed.
18-
- `package.json`: Package metadata and dependencies.
19-
- `README.md`: Information about the package.
41+
- `CHANGELOG.md`: A log of what's changed
42+
- `package.json`: Package metadata and dependencies
43+
- `README.md`: Information about the package
44+
- `src/`: The package's source code
2045

2146
When you make changes to a package, please make sure you add a few relevant tests and run the whole test suite to make sure everything still works. Then, add a human-friendly description of your change in the changelog and [make a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request). We will take a look at it as soon as we can.
2247

2348
## Releases
2449

2550
Cutting releases is a 2-step process:
2651

27-
- Update versions in package.json, jsr.json (if applicable), and the changelog and create a git tag
28-
- Publish new packages to npm/JSR and create a GitHub Release
52+
- Update versions in package.json and the changelog and create a git tag (tagging)
53+
- Publish new packages to npm and create a GitHub Release (publishing)
2954

3055
This repo includes a script for each step.
3156

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@ All packages are published in both modern ESM and legacy CJS formats for maximum
6363

6464
## Contributing
6565

66-
We welcome contributions! If you'd like to contribute, please feel free to open an issue or submit a pull request. See [CONTRIBUTING](https://github.com/mjackson/remix-the-web/blob/main/CONTRIBUTING.md) for more information.
66+
We welcome contributions! If you'd like to contribute, please feel free to open an issue or submit a pull request. See [CONTRIBUTING](https://github.com/remix-run/remix/blob/v3/CONTRIBUTING.md) for more information.
6767

6868
## License
6969

70-
See [LICENSE](https://github.com/mjackson/remix-the-web/blob/main/LICENSE)
70+
See [LICENSE](https://github.com/remix-run/remix/blob/v3/LICENSE)

packages/fetch-proxy/CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# `fetch-proxy` CHANGELOG
22

3-
This is the changelog for [`fetch-proxy`](https://github.com/mjackson/remix-the-web/tree/main/packages/fetch-proxy). It follows [semantic versioning](https://semver.org/).
3+
This is the changelog for [`fetch-proxy`](https://github.com/remix-run/remix/tree/v3/packages/fetch-proxy). It follows [semantic versioning](https://semver.org/).
4+
5+
## HEAD
6+
7+
- Renamed package from `@mjackson/fetch-proxy` to `@remix-run/fetch-proxy`
48

59
## v0.4.0 (2025-07-11)
610

packages/fetch-proxy/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ In the context of servers, an HTTP proxy server is a server that forwards all re
1818
Install from [npm](https://www.npmjs.com/):
1919

2020
```sh
21-
npm i @mjackson/fetch-proxy
21+
npm i @remix-run/fetch-proxy
2222
```
2323

2424
## Usage
2525

2626
```ts
27-
import { createFetchProxy } from '@mjackson/fetch-proxy';
27+
import { createFetchProxy } from '@remix-run/fetch-proxy';
2828

2929
// Create a proxy that sends all requests through to remix.run
3030
let proxy = createFetchProxy('https://remix.run');
@@ -44,8 +44,8 @@ assert(title.includes('Remix'));
4444

4545
## Related Packages
4646

47-
- [`node-fetch-server`](https://github.com/mjackson/remix-the-web/tree/main/packages/node-fetch-server) - Build HTTP servers for Node.js using the web fetch API
47+
- [`node-fetch-server`](https://github.com/remix-run/remix/tree/v3/packages/node-fetch-server) - Build HTTP servers for Node.js using the web fetch API
4848

4949
## License
5050

51-
See [LICENSE](https://github.com/mjackson/remix-the-web/blob/main/LICENSE)
51+
See [LICENSE](https://github.com/remix-run/remix/blob/v3/LICENSE)

packages/fetch-proxy/package.json

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
{
2-
"name": "@mjackson/fetch-proxy",
2+
"name": "@remix-run/fetch-proxy",
33
"version": "0.4.0",
44
"description": "An HTTP proxy for the web Fetch API",
55
"author": "Michael Jackson <[email protected]>",
66
"license": "MIT",
77
"repository": {
88
"type": "git",
9-
"url": "git+https://github.com/mjackson/remix-the-web.git",
9+
"url": "git+https://github.com/remix-run/remix.git",
1010
"directory": "packages/fetch-proxy"
1111
},
12-
"homepage": "https://github.com/mjackson/remix-the-web/tree/main/packages/fetch-proxy#readme",
12+
"homepage": "https://github.com/remix-run/remix/tree/v3/packages/fetch-proxy#readme",
1313
"files": [
1414
"LICENSE",
1515
"README.md",
@@ -23,15 +23,24 @@
2323
"main": "dist/fetch-proxy.cjs",
2424
"exports": {
2525
".": {
26-
"types": "./dist/fetch-proxy.d.ts",
27-
"import": "./dist/fetch-proxy.js",
28-
"require": "./dist/fetch-proxy.cjs",
29-
"default": "./dist/fetch-proxy.js"
26+
"types": "./src/fetch-proxy.ts",
27+
"default": "./src/fetch-proxy.ts"
3028
},
3129
"./package.json": "./package.json"
3230
},
31+
"publishConfig": {
32+
"exports": {
33+
".": {
34+
"types": "./dist/fetch-proxy.d.ts",
35+
"import": "./dist/fetch-proxy.js",
36+
"require": "./dist/fetch-proxy.cjs",
37+
"default": "./dist/fetch-proxy.js"
38+
},
39+
"./package.json": "./package.json"
40+
}
41+
},
3342
"dependencies": {
34-
"@mjackson/headers": "workspace:^"
43+
"@remix-run/headers": "workspace:^"
3544
},
3645
"devDependencies": {
3746
"@types/node": "^20.14.10",

packages/fetch-proxy/src/lib/fetch-proxy.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { SetCookie } from '@mjackson/headers';
1+
import { SetCookie } from '@remix-run/headers';
22

33
export interface FetchProxyOptions {
44
/**

packages/file-storage/CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# `file-storage` CHANGELOG
22

3-
This is the changelog for [`file-storage`](https://github.com/mjackson/remix-the-web/tree/main/packages/file-storage). It follows [semantic versioning](https://semver.org/).
3+
This is the changelog for [`file-storage`](https://github.com/remix-run/remix/tree/v3/packages/file-storage). It follows [semantic versioning](https://semver.org/).
4+
5+
## HEAD
6+
7+
- Renamed package from `@mjackson/file-storage` to `@remix-run/file-storage`
48

59
## v0.7.0 (2025-06-10)
610

packages/file-storage/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@
1414
Install from [npm](https://www.npmjs.com/):
1515

1616
```sh
17-
npm install @mjackson/file-storage
17+
npm install @remix-run/file-storage
1818
```
1919

2020
## Usage
2121

2222
```ts
23-
import { LocalFileStorage } from '@mjackson/file-storage/local';
23+
import { LocalFileStorage } from '@remix-run/file-storage/local';
2424

2525
let storage = new LocalFileStorage('./user/files');
2626

@@ -43,7 +43,7 @@ await storage.remove(key);
4343
The `FileStorage` interface allows you to implement your own file storage for custom storage backends:
4444

4545
```ts
46-
import { type FileStorage } from '@mjackson/file-storage';
46+
import { type FileStorage } from '@remix-run/file-storage';
4747

4848
class CustomFileStorage implements FileStorage {
4949
/**
@@ -75,9 +75,9 @@ class CustomFileStorage implements FileStorage {
7575

7676
## Related Packages
7777

78-
- [`form-data-parser`](https://github.com/mjackson/remix-the-web/tree/main/packages/form-data-parser) - Pairs well with this library for storing `FileUpload` objects received in `multipart/form-data` requests
79-
- [`lazy-file`](https://github.com/mjackson/remix-the-web/tree/main/packages/lazy-file) - The streaming `File` implementation used internally to stream files from storage
78+
- [`form-data-parser`](https://github.com/remix-run/remix/tree/v3/packages/form-data-parser) - Pairs well with this library for storing `FileUpload` objects received in `multipart/form-data` requests
79+
- [`lazy-file`](https://github.com/remix-run/remix/tree/v3/packages/lazy-file) - The streaming `File` implementation used internally to stream files from storage
8080

8181
## License
8282

83-
See [LICENSE](https://github.com/mjackson/remix-the-web/blob/main/LICENSE)
83+
See [LICENSE](https://github.com/remix-run/remix/blob/v3/LICENSE)

0 commit comments

Comments
 (0)