This is a repository of libraries designed to be useful for writing MicroPython applications.
 
 
Go to file
Paul Sokolovsky f115b8c22f upip: install(): Accept single package name in addition to a list. 2016-10-08 00:25:29 +03:00
__future__ __future__: Add dummies for all available feature descriptions 2015-12-05 22:13:12 +02:00
_libc _libc: Deprecated, superseded by ffilib. 2015-09-10 01:18:36 +03:00
_markupbase
abc
argparse argparse: Release 0.3.2. 2016-05-02 14:08:42 +03:00
asyncio_slow
base64
binascii binascii: Release 2.4.0-3. 2015-06-15 00:27:19 +03:00
binhex
bisect
calendar
cgi
cmd
collections collections: Release 0.1.1. 2016-05-02 14:08:42 +03:00
collections.defaultdict
collections.deque collections.deque: Add extend() method. 2015-12-03 00:36:07 +02:00
concurrent.futures
contextlib contextlib: modify TestExitStack to work in uPy 2015-11-04 00:27:03 +03:00
copy
cpython-uasyncio
csv
curses.ascii
datetime
dbm
decimal
difflib
email.charset
email.encoders
email.errors
email.feedparser
email.header
email.internal
email.message
email.parser
email.utils email.utils: Switch to CPython based version scheme. 2016-02-26 10:08:48 +02:00
errno
fcntl fcntl: Switch to ffilib. 2015-09-08 22:27:59 +03:00
ffilib ffilib: Don't fail if "ffi" module not present, just return None. 2015-12-18 20:21:17 +02:00
fnmatch
formatter
fractions
ftplib
functools functools: Add very simple implementation of reduce() 2015-12-05 22:24:08 +02:00
getopt getopt: Re-release as 3.3.3 per the latest conventions. 2016-06-10 22:50:38 +03:00
getpass
gettext
glob
gzip
hashlib
heapq
hmac
html
html.entities
html.parser
http.client
imaplib
imp
inspect inspect: Release 0.1.1. 2015-07-16 13:16:14 +03:00
io io: Release 0.0.2. 2016-05-02 14:08:42 +03:00
ipaddress
itertools itertools: Release 0.2.1. 2015-12-10 00:06:01 +02:00
json
keyword
linecache linecache: Release 0.0.0. 2016-06-10 22:37:20 +03:00
locale
logging logging: Release 0.1.2. 2016-01-31 01:59:44 +02:00
machine machine: Release 0.1. 2016-07-02 18:42:13 +03:00
mailbox
mailcap
mimetypes
multiprocessing multiprocessing: Release 0.1. 2015-06-20 19:29:19 +03:00
nntplib
numbers
operator
optparse
os os: Release 0.4.3. 2016-06-13 10:16:42 +03:00
os.path os.path: Add sep 2015-12-10 00:01:02 +02:00
pathlib
pdb
pickle pickle: Add metadata.txt . 2015-08-23 23:22:36 +03:00
pickletools
pkg_resources pkg_resources: Add metadata. 2015-06-26 02:17:32 +03:00
pkgutil pkgutil: Release 0.1. 2015-06-26 13:50:47 +03:00
platform
poplib
posixpath
pprint
profile
pty
pyb
pystone
pystone_lowmem pystone_lowmem: Release 3.4.2-2. 2016-05-10 00:42:25 +03:00
queue
quopri
random
re-pcre
reprlib
runpy
sched
select select: Switch to ffilib. 2015-09-02 00:15:05 +03:00
selectors
shelve
shlex
shutil
signal signal: Switch to ffilib. 2015-09-09 17:57:25 +03:00
smtplib
socket socket: Release 0.5.1. 2016-04-16 21:24:42 +03:00
socketserver
sqlite3
stat
statistics
string string: Add test_translate.py 2016-02-03 00:24:36 +02:00
stringprep
struct
subprocess
tarfile
telnetlib
tempfile
test test: test_pep380.py: Update to pass on MicroPython. 2015-07-08 00:07:48 +03:00
test.pystone
test.support test.support: Release 0.1. 2015-07-05 22:25:33 +03:00
textwrap
threading
time time: Release 0.3. 2016-09-18 20:21:03 +03:00
timeit timeit: Release 3.3.3-2. 2016-06-10 22:47:35 +03:00
trace
traceback traceback: Release 0.2. 2016-06-10 23:10:43 +03:00
tty
types
uasyncio uasyncio: test_http_server_heavy.py: Comment out mem_info() call. 2016-01-11 00:07:43 +02:00
uasyncio.core uasyncio.core: Protect another case of debug logging with "if __debug__:". 2016-07-04 12:58:40 +03:00
uasyncio.queues
ucontextlib ucontextlib: spin off minimal module from contextlib 2015-10-22 20:47:22 +03:00
ucurses ucurses: Release 0.1.1. 2015-06-24 00:27:26 +03:00
umqtt.robust umqtt.robust: Add README and metadata. 2016-08-15 17:06:49 +03:00
umqtt.simple umqtt.simple: Release 1.2. 2016-09-18 21:22:23 +03:00
unicodedata
unittest unittest: add assertIsNone() and assertIsNotNone() methods to TestCase 2015-11-01 17:01:58 +03:00
upip upip: install(): Accept single package name in addition to a list. 2016-10-08 00:25:29 +03:00
upysh upysh: Release 0.6. 2016-08-06 15:11:28 +03:00
urequests urequests: Release 0.4. 2016-06-10 00:57:40 +03:00
urllib
urllib.parse urllib.parse: Requires collections.defaultdict class. 2015-11-16 18:47:58 +02:00
urllib.urequest urllib.urequest: Release 0.4.1. 2016-06-11 00:28:30 +03:00
utarfile utarfile: Release 0.3. 2016-10-03 23:53:37 +03:00
uu
uuid
warnings
weakref
xmltok xmltok: Release 0.1. 2015-10-10 13:16:47 +03:00
zipfile
.gitignore
CONTRIBUTING.md
LICENSE
Makefile
README.md
make_metadata.py make_metadata.py: Allow to use README.rst as a long_description. 2016-07-03 15:47:46 +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: