This is a repository of libraries designed to be useful for writing MicroPython applications.
 
 
Go to file
Paul Sokolovsky 14b6b6945b uasyncio.core: Doesn't depend on heapq module for some time now. 2014-12-17 00:31:51 +02:00
_libc _libc: Release 0.2.1. 2014-10-11 05:17:14 +03:00
abc abc: Add dummy module. 2014-05-20 22:28:36 +03:00
asyncio_slow asyncio_slow: Add example of wait() from docs. 2014-10-21 01:31:57 +03:00
base64 base64: Some dummy functions. 2014-05-19 23:44:18 +03:00
binascii binascii: Some dummy functions. 2014-05-19 23:24:22 +03:00
binhex
bisect
calendar calendar: Add dummy module. 2014-05-20 22:30:31 +03:00
cmd cmd: Customize to work with MicroPython. 2014-08-13 00:49:28 +03:00
collections
collections.defaultdict collections.defaultdict: Add missing metadata.txt. 2014-05-24 14:38:16 +03:00
collections.deque collections.deque: Speedup `appendleft`, implement `__iter__` and `__str__` 2014-12-15 03:29:06 +03:00
copy
csv csv: Add dummy module. 2014-05-24 18:27:52 +03:00
datetime
dbm
email.charset email.charset: Add metadata. 2014-05-24 15:20:33 +03:00
email.encoders email.encoders: Add metadata. 2014-05-24 15:13:36 +03:00
email.errors email.errors: Add metadata, 2014-05-24 15:27:27 +03:00
email.feedparser email.feedparser: Add metadata. 2014-05-24 16:06:53 +03:00
email.header email.header: MicroPython doesn't have str.isspace(). 2014-05-25 03:25:06 +03:00
email.internal email.internal: Add metadata. 2014-05-24 16:18:24 +03:00
email.message email.message: Add email.iterators module to dist-package. 2014-05-24 16:21:00 +03:00
email.parser email.parser: Add metadata. 2014-05-24 16:09:11 +03:00
email.utils email.utils: Add metadata. 2014-05-24 15:36:40 +03:00
errno errno: Add ECONNRESET. 2014-10-25 00:07:26 +03:00
fcntl fcntl: Depend on _libc. 2014-06-21 14:52:03 +03:00
fnmatch
functools functools: Add dummy update_wrapper(), wraps(). 2014-06-08 00:26:17 +03:00
getopt getopt: Add setup.py. 2014-05-19 22:06:07 +03:00
getpass getpass: Add dummy module. 2014-06-21 03:19:23 +03:00
glob glob: Explicitly import os.path. 2014-06-06 22:53:30 +03:00
gzip
hashlib
heapq heapq: Import itertools only for functions which really require it. 2014-07-21 00:29:33 +03:00
html/html
html.entities
http.client http.client: Add metadata. 2014-06-07 23:15:03 +03:00
io io: As MicroPython builtin module is now _io, add dummy io wrapper. 2014-06-21 02:52:41 +03:00
ipaddress ipaddress: Add dummy module. 2014-06-21 03:20:16 +03:00
itertools
json
keyword
logging logging: Set default level as INFO, DEBUG is too spammy. 2014-11-14 02:43:09 +02:00
mailbox mailbox: Add dummy module. 2014-06-21 03:24:14 +03:00
mimetypes mimetypes: Add dummy module. 2014-06-21 03:23:37 +03:00
multiprocessing
optparse optparse: Add dummy module. 2014-06-21 03:21:13 +03:00
os os: Version 0.1.9. 2014-09-06 17:13:28 +03:00
os.path os.path: Make join() accept bytes args. 2014-05-26 01:59:41 +03:00
pickle
posixpath posixpath: Add dummy module. 2014-05-20 23:33:42 +03:00
pprint
pty pty: Add dummy module. 2014-06-21 03:21:48 +03:00
queue
quopri quopri: Add metadata. 2014-05-20 22:36:54 +03:00
random
re-pcre re-pcre: Implement count arg to re.sub(). 2014-06-08 00:16:34 +03:00
reprlib reprlib: Add dummy module. 2014-06-21 03:22:19 +03:00
sched sched: Add dummy module. 2014-06-21 03:22:49 +03:00
select select: Release 0.1.1. 2014-11-04 02:57:19 +02:00
shelve shelve: Add dummy module. 2014-05-24 18:28:16 +03:00
shlex
shutil shutils: Bump version. 2014-05-19 22:47:30 +03:00
socket socket: Update for rename microsocket -> usocket. 2014-10-11 05:18:49 +03:00
sqlite3 sqlite3: Change return type of column_double from "f" to "d". 2014-09-10 21:06:54 +01:00
stat stat: Take from CPython 3.3.3. 2014-05-19 23:46:49 +03:00
string string: Add basic constant definitions. 2014-05-20 22:38:52 +03:00
subprocess
tarfile tarfile: Add dummy module. 2014-06-21 03:07:17 +03:00
tempfile
test.pystone test.pystone: Add pristine from Python-3.3.3 tarball. 2014-10-25 22:19:01 +03:00
test.support test.support: Addmore functions. 2014-05-14 21:51:02 +03:00
timeit timeit: Add dummy module. 2014-06-21 03:07:46 +03:00
traceback
types
uasyncio uasyncio: Add automated script for validation testing with Boom. 2014-11-27 22:15:36 +02:00
uasyncio.core uasyncio.core: Doesn't depend on heapq module for some time now. 2014-12-17 00:31:51 +02:00
unittest unittest: Add `assertFalse` to `TestCase` 2014-12-15 18:03:58 +02:00
urllib
urllib.parse urllib.parse: Add metadata. 2014-05-23 02:19:21 +03:00
uu uu: Add pristine from CPython 3.3.3. 2014-05-20 23:37:43 +03:00
warnings
zipfile zipfile: Add dummy module. 2014-06-21 03:07:35 +03:00
.gitignore .gitignore: Ignore local development files. 2014-05-31 15:18:48 +03:00
LICENSE LICENSE: Add concatenation of licensing terms used. 2014-08-18 21:32:04 +03:00
Makefile
README.md README.md: Tweak a bit. 2014-10-19 14:29:10 +03:00
make_metadata.py make_metadata.py: Allow to override dist_name in metadata.txt. 2014-06-21 04:05:20 +03:00

README.md

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
micropython-lib is a highly experimental community project.

Please help to drive it to just "experimental" state by testing
provided packages with MicroPython.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

micropython-lib

micropython-lib is a project to develop a non-monolothic standard library for MicroPython. Each module or package is available as a separate distribution package from PyPI. Each module is either written from scratch or ported from CPython.

Note that the main target of micropython-lib is a "Unix" port of MicroPython (additional ports to support are to be determined). Actual system requirements vary per module. Though if a module is not related to I/O, the module should work without problem on bare-metal ports too (e.g. pyboard).

Usage

micropython-lib packages are published on PyPI (Python Package Index), the standard Python community package repository: http://pypi.python.org/ . On PyPi, you can search for MicroPython related packages and read additional package information.

To install packages from PyPI for usage on your local system, use the pip-micropython tool, which is a simple wrapper around the standard pip tool, which is used to install packages for CPython. The pip-micropython tool can be found in tools subdirectory of the main MicroPython repository (https://github.com/micropython/micropython). Just install the pip-micropython script somewhere on your PATH.

Afterwards, just use pip-micropython in a way similar to pip:

$ pip-micropython install micropython-copy
$ micropython
>>> import copy
>>> copy.copy([1, 2, 3])
[1, 2, 3]

Review the pip-micropython source code for more info.

Development

To install modules during development, use make install. By default, all available packages will be installed. To install a specific module, add the MOD=<module> parameter to the end of the make install command.

More information is on GitHub and in the MicroPython forums:

Guidelines for packaging MicroPython modules for PyPI: