Skip to main content

an ideal backend

Reason this release was yanked:

error in directory routes

Project description

xu60

an ideal backend

xu60 is a

  • Content-Addressable
  • Hyper Text Transport Protocol
  • Application Programmatic Interface

where hashes and character indexes

define immutable URLs

for re-usable content, (mostly) guaranteed not to rot as a website grows, changes, is edited, or is otherwised enhanced (or regressed)

scope

  1. xu60 should provide an HTTP server that is simultaneously capable of serving traditional web pages, scripts, and styles alongside whatever content-addressable data an application developer sees fit
  2. xu60 should contain additional functionality for querying document version histories and displaying document metadata such as original paths, edit dates, etc.
  3. besides documents, content-addressable document histories, and document/history metadata, xu60 should remain agnostic to use-case and ship as few features as is plausible
  4. xu60 should virtually never re-code the core algorithms that make its features possible. high-performance versions of virtually every element already exist--xu60 is a thin application layer built around known technologies. plus I'm dumb
  5. the "known technologies" that xu60 relies on should (wherever possible) already be infrastructurally important to the web and unlikely to disappear or be deprecated with any rapidity
  6. xu60 should be easy to run in a number of configurations to serve a number of applications--hypermedia-ing, mirroring, addressing, serving, distributing, archiving, auditing, etc.

demo and installation

xu60 comes with a demo application (built with htmx!! [under construction]) that serves as both a technical demonstration of the server's capabilities, proof-of-concept object browser, and tour of the server's own code.

# to run xu60 in its current state:
git clone https://github.com/rfinz/xu60.git #clone the repository
cd xu60 #navigate into the project
python -m venv env #create a virtual environment
source env/bin/activate #activate the virtual environment
pip install -e . #install required dependencies and the xu60 application
uvicorn xu60:app #run the asgi application -- you may need to install uvicorn separately
# -> the demo should now be available at 127.0.0.1:8000

to do

  • finish demo web app
  • package python application for distribution
  • re-write README to reflect the installation differences between a git based development install and using the package as a requirement for your own application
  • think of more to do

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xu60-0.1.1.tar.gz (285.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xu60-0.1.1-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file xu60-0.1.1.tar.gz.

File metadata

  • Download URL: xu60-0.1.1.tar.gz
  • Upload date:
  • Size: 285.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for xu60-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a74dee250a3df60b992abfebfe746658db6b2f432f16d2427caed8c363143b95
MD5 3c7ad621fcb94bade4113e9cf00938ce
BLAKE2b-256 48906c195fdc3a9944a11e212ef0d5d3a3ee1f58bd96449cb6200f3d0fc6d84a

See more details on using hashes here.

File details

Details for the file xu60-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: xu60-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for xu60-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 87db6943d8367d78a9ac518673c62d0a05caedd0bb7e957bfb38cc64aff4c6b6
MD5 646ca47ff3f2c29005699a0e87862e5d
BLAKE2b-256 c7ec3ec4c18f5b28e2b249b9db51bc249396ac5c217c5698571914f5fab9da5a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page