Skip to content

Commit 03db150

Browse files
committed
update README
1 parent dd9482e commit 03db150

File tree

2 files changed

+33
-58
lines changed

2 files changed

+33
-58
lines changed

README.md

+26-51
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,39 @@
1-
# IDOM
1+
# IDOM · [![Tests](https://github.com/idom-team/idom/workflows/Test/badge.svg?event=push)](https://github.com/idom-team/idom/actions?query=workflow%3ATest) [![PyPI Version](https://img.shields.io/pypi/v/idom.svg)](https://pypi.python.org/pypi/idom) [![License](https://img.shields.io/badge/License-MIT-purple.svg)](https://github.com/idom-team/idom/blob/main/LICENSE)
22

3-
<a href="https://github.com/idom-team/idom/actions?query=workflow%3ATest">
4-
<img alt="Tests" src="https://github.com/idom-team/idom/workflows/Test/badge.svg?event=push" />
5-
</a>
6-
<a href="https://pypi.python.org/pypi/idom">
7-
<img alt="Version Info" src="https://img.shields.io/pypi/v/idom.svg"/>
8-
</a>
9-
<a href="https://github.com/idom-team/idom/blob/main/LICENSE">
10-
<img alt="License: MIT" src="https://img.shields.io/badge/License-MIT-purple.svg">
11-
</a>
3+
IDOM is a Python package for making user interfaces. These interfaces are built from
4+
small elements of functionality like buttons text and images. IDOM allows you to combine
5+
these elements into reusable "components" that can be composed together to create
6+
complex views.
127

13-
A package for building highly interactive user interfaces in pure Python inspired by
14-
[ReactJS](https://reactjs.org/).
15-
16-
**Be sure to [read the Documentation](https://idom-docs.herokuapp.com)**
17-
18-
IDOM is still young. If you have ideas or find a bug, be sure to post an
19-
[issue](https://github.com/idom-team/idom/issues)
20-
or create a
21-
[pull request](https://github.com/idom-team/idom/pulls). Thanks in advance!
22-
23-
<h3>
24-
<a
25-
target="_blank"
26-
href="https://mybinder.org/v2/gh/idom-team/idom-jupyter/main?filepath=notebooks%2Fintroduction.ipynb"
27-
>
28-
Try it Now
29-
<img alt="Binder" valign="bottom" height="25px"
30-
src="https://mybinder.org/badge_logo.svg"
31-
/>
32-
</a>
33-
</h3>
34-
35-
Click the badge above to get started! It will take you to a [Jupyter Notebooks](https://jupyter.org/)
36-
hosted by [Binder](https://mybinder.org/) with some great examples.
37-
38-
### Or Install it Now
39-
40-
```bash
41-
pip install idom[stable]
42-
```
8+
Ecosystem independence is also a core feature of IDOM. It can be added to existing
9+
applications built on a variety of sync and async web servers, as well as integrated
10+
with other frameworks like Django, Jupyter, and Plotly Dash. Not only does this mean
11+
you're free to choose what technology stack to run on, but on top of that, you can run
12+
the exact same components wherever you need them. For example, you can take a component
13+
originally developed in a Jupyter Notebook and embed it in your production application
14+
without changing anything about the component itself.
4315

4416
# At a Glance
4517

46-
IDOM can be used to create a simple slideshow which changes whenever a user clicks an image.
18+
To get a rough idea of how to write apps in IDOM, take a look at the tiny "hello
19+
world" application below:
4720

4821
```python
49-
import idom
22+
from idom import component, html, run
5023

51-
@idom.component
52-
def Slideshow():
53-
index, set_index = idom.hooks.use_state(0)
54-
url = f"https://picsum.photos/800/300?image={index}"
55-
return idom.html.img({"src": url, "onClick": lambda event: set_index(index + 1)})
24+
@component
25+
def App():
26+
return html.h1("Hello, World!")
5627

57-
idom.run(Slideshow, port=8765)
28+
run(App)
5829
```
5930

60-
Running this will serve our slideshow to `"https://localhost:8765/client/index.html"`
31+
# Resources
6132

62-
<img src='https://picsum.photos/800/300?random'/>
33+
Follow the links below to find out more about this project
6334

64-
You can even display the same thing in a Jupyter Notebook, just use [`idom_jupyter`](https://github.com/idom-team/idom-jupyter):
35+
- [Try it Now](https://mybinder.org/v2/gh/idom-team/idom-jupyter/main?urlpath=lab/tree/notebooks/introduction.ipynb) - check out IDOM in a Jupyter Notebook.
36+
- [Documentation](https://idom-docs.herokuapp.com/) - learn how to install, run, and use IDOM.
37+
- [Community Forum](https://github.com/idom-team/idom/discussions) - ask questions, share ideas, and show off projects.
38+
- [Contributor Guide](https://idom-docs.herokuapp.com/docs/developing-idom/contributor-guide.html) - see how you can help develop this project.
39+
- [Code of Conduct](https://github.com/idom-team/idom/blob/main/CODE_OF_CONDUCT.md) - standards for interacting with this community.

docs/source/index.rst

+7-7
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,13 @@ into nestable and reusable chunks of code called :ref:`"components" <Your First
4141
Components>` that allow you to focus on what your application does rather than how it
4242
does it.
4343

44-
IDOM is also ecosystem independent. It can be added to existing applications built on a
45-
variety of sync and async web servers, as well as integrated with other frameworks like
46-
Django, Jupyter, and Plotly Dash. Not only does this mean you're free to choose what
47-
technology stack to run on, but on top of that, you can run the exact same components
48-
wherever you need them. Consider the case where, you can take a component originally
49-
developed in a Jupyter Notebook and embed it in your production application without
50-
changing anything about the component itself.
44+
Ecosystem independence is also a core feature of IDOM. It can be added to existing
45+
applications built on a variety of sync and async web servers, as well as integrated
46+
with other frameworks like Django, Jupyter, and Plotly Dash. Not only does this mean
47+
you're free to choose what technology stack to run on, but on top of that, you can run
48+
the exact same components wherever you need them. For example, you can take a component
49+
originally developed in a Jupyter Notebook and embed it in your production application
50+
without changing anything about the component itself.
5151

5252

5353
At a Glance

0 commit comments

Comments
 (0)