Skip to content

Commit

Permalink
update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
itsjavi committed Sep 5, 2024
1 parent 3b93baf commit df0ef6f
Showing 1 changed file with 9 additions and 30 deletions.
39 changes: 9 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,14 @@ React.
## Core Features

- Custom JSX runtime implementation
- Custom JSX runtime implementation, in TypeScript
- Supports functional components (only)
- Supports async components, also with a `fallback`. It means you don't need to wrap your components in `Suspense`.
- Basic hooks implementation:
- `useState` for state management
- `useEffect` for side effects
- Event handling
- Supports `ref` as prop, to access DOM elements
- TypeScript support

### TO-DO

- [ ] Support both `class` and `className`, and integrate with `clsx`, so arrays and conditional classes are supported.
- [ ] Add a `useGlobalState` hook to manage and subscribe to global state in a very simple way
- [ ] Better HTML attribute types
- [ ] Add SSR compatibility
- [ ] Support and handle sync/async functions in form's `action`: `(data: FormData) => Promise<void>`
- [ ] Implement `cache()` to avoid expensive tasks on re-renders

We won't add support for more complex features like advanced context, portals, style objects, custom hooks, etc.

## Getting Started

Expand Down Expand Up @@ -76,22 +64,13 @@ An example of how to use the JynXS runtime can be found in [`src/example.tsx`](.
This file demonstrates the usage of functional components, async components, state management, effects, and event
handling.

## Building for Production

To create a production build:

```
pnpm build
```
## Technologies Used
- Vite + esbuild
- Custom JSX Runtime
- TypeScript
No Babel or Webpack needed to transpile the JSX, esbuild is used instead.
### TO-DO

## License
- [ ] Support both `class` and `className`, and integrate with `clsx`, so arrays and conditional classes are supported.
- [ ] Add a `useGlobalState` hook to manage and subscribe to global state in a very simple way
- [ ] Better HTML attribute types
- [ ] Add SSR compatibility
- [ ] Support and handle sync/async functions in form's `action`: `(data: FormData) => Promise<void>`
- [ ] Implement `cache()` to avoid expensive tasks on re-renders

[MIT License](LICENSE)
We won't add support for more complex features like advanced context, portals, style objects, custom hooks, etc.

0 comments on commit df0ef6f

Please sign in to comment.