Go to file
Ilya Kreymer 9a2787f9c4
User refactor + remove fastapi_users dependency + update fastapi (#1290)
Fixes #1050 

Major refactor of the user/auth system to remove fastapi_users
dependency. Refactors users.py to be standalone
and adds new auth.py module for handling auth. UserManager now works
similar to other ops classes.

The auth should be fully backwards compatible with fastapi_users auth,
including accepting previous JWT tokens w/o having to re-login. The User
data model in mongodb is also unchanged.

Additional fixes:
- allows updating fastapi to latest
- add webhook docs to openapi (follow up to #1041)

API changes:
- Removing the`GET, PATCH, DELETE /users/<id>` endpoints, which were not
in used before, as users are scoped to orgs. For deletion, probably
auto-delete when user is removed from last org (to be implemented).
- Rename `/users/me-with-orgs` is renamed to just `/users/me/`
- New `PUT /users/me/change-password` endpoint with password required to update password, fixes  #1269, supersedes #1272 

Frontend changes:
- Fixes from #1272 to support new change password endpoint.

---------
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
Co-authored-by: sua yoo <sua@suayoo.com>
2023-10-18 10:49:23 -07:00
.github test quickfix: microk8s crawls were not running due to exceeding CI resource capacity 2023-10-10 23:29:10 -07:00
.vscode Add MkDocs YAML schema to vscode settings.json (#1075) 2023-08-15 12:06:05 -07:00
ansible ansible microk8s additional cleanup (#1295) 2023-10-16 18:55:35 -07:00
backend User refactor + remove fastapi_users dependency + update fastapi (#1290) 2023-10-18 10:49:23 -07:00
chart User refactor + remove fastapi_users dependency + update fastapi (#1290) 2023-10-18 10:49:23 -07:00
configs
docs Adds missing user documentation for launch! (#1286) 2023-10-16 19:16:38 -07:00
frontend User refactor + remove fastapi_users dependency + update fastapi (#1290) 2023-10-18 10:49:23 -07:00
scripts publish helm chart on release (fixes #1114) (#1117) (#1123) 2023-08-30 12:02:02 -07:00
test fix(build): use /usr/bin/env bash instead of /bin/bash (#1020) 2023-07-28 21:50:04 -07:00
.gitignore Make btrix helper work with microk8s (#768) 2023-04-18 08:50:46 -04:00
.pre-commit-config.yaml Remove config from list endpoints to speed up responses (#1193) 2023-09-19 11:05:48 -05:00
btrix Add down command to uninstall and delete data (#1285) 2023-10-13 17:16:12 -07:00
CHANGES.md version: bump to 1.3.0 2023-02-24 18:07:56 -08:00
LICENSE
mkdocs.yml Adds missing user documentation for launch! (#1286) 2023-10-16 19:16:38 -07:00
NOTICE
pylintrc
README.md docs: fix link to dev docs 2023-05-24 10:59:41 -07:00
update-version.sh fix: add "v" to helm chart release filename (#1141) 2023-09-05 15:47:39 -04:00
version.txt version: update to 1.8.0-beta.0 2023-10-17 18:06:55 -07:00
yarn.lock Frontend collections beta UI (#886) 2023-06-06 17:52:01 -07:00

Browsertrix Cloud

Browsertrix Cloud is an open-source cloud-native high-fidelity browser-based crawling service designed to make web archiving easier and more accessible for everyone.

The service provides an API and UI for scheduling crawls and viewing results, and managing all aspects of crawling process. This system provides the orchestration and management around crawling, while the actual crawling is performed using Browsertrix Crawler containers, which are launched for each crawl.

See Features for a high-level list of planned features.

Documentation

The full docs for using, deploying and developing Browsertrix Cloud are available at: https://docs.browsertrix.cloud

Deployment

The latest deployment documentation is available at: https://docs.browsertrix.cloud/deploy

The docs cover deploying Browsertrix Cloud in different environments using Kubernetes, from a single-node setup to scalable clusters in the cloud.

Previously, Browsertrix Cloud also supported Docker Compose and podman-based deployment. This is now deprecated due to the complexity of maintaining feature parity across different setups, and with various Kubernetes deployment options being available and easy to deploy, even on a single machine.

Making deployment of Browsertrix Cloud as easy as possible remains a key goal, and we welcome suggestions for how we can further improve our Kubernetes deployment options.

If you are looking to just try running a single crawl, you may want to try Browsertrix Crawler first to test out the crawling capabilities.

Development Status

Browsertrix Cloud is currently in a beta, though the system and backend API is fairly stable, we are working on many additional features.

Additional developer documentation is available at https://docs.browsertrix.cloud/develop

Please see the GitHub issues and this GitHub Project for our current project plan and tasks.

License

Browsertrix Cloud is made available under the AGPLv3 License.

Documentation is made available under the Creative Commons Attribution 4.0 International License