A self-hosted public, and private, bookmark management project.
- Python 59%
- HTML 37.6%
- CSS 2.5%
- Dockerfile 0.6%
- Shell 0.3%
|
byzantium
99d042ed86
Move debug to own config section
Shift detection of fields around Set default reverse proxy to 2 Add cloudflare scraping upon request failure |
||
|---|---|---|
| core | Move debug to own config section | |
| data | Move debug to own config section | |
| lang | Added API Limiter | |
| misc | Added basic systemd service | |
| network | Start of network (Link Contact) support | |
| routes | Fixed API Agent detection | |
| static | Moved RAW details to API endpoints | |
| templates | Added API Limiter | |
| .dockerignore | Add .dockerignore | |
| .gitignore | Initial Commit | |
| build.sh | Create manual docker builder | |
| docker-compose.yml | Optimisation and import sorting | |
| Dockerfile | Docker adjustments | |
| init.sh | Docker adjustments | |
| LICENSE | Initial Commit | |
| main.py | Move debug to own config section | |
| README.md | Moved RAW details to API endpoints | |
| requirements.txt | Move debug to own config section | |
| VERSION | Move debug to own config section | |
[画像:This is the logo of favs - A beige computer from the early 90s on an orange background.]
Favs
Good ol' bookmarks!
This is primarily a hobby project from a self-taught individual who enjoys writing stuff as a learning experience. There are a number of these types of projects around but few suited what I wanted out of a bookmark app. Always keen to hear if anybody else runs this project on their own hardware.
Contains
- Absolutely NO javascript
- Absolutely NO tracking
- Adjustable rate limiting for login and submission
- API endpoints accessible at /api/
- Argon2id password hashing
- Bulk import of links from exported bookmarks file
- Exportable links to bookmarks file
- Categorised and tagged links
- Easy to use administration page
- Invitation registration
- Localisation support
- Multi-user bookmarks
- Private and NSFW links
- Private will only display for users and not public view
- NSFW will only display for logged-in users and marked as red
- Private key user recovery
- Purging of user accounts or user links
- Random links! Because why not!
- Raw JSON data output with endpoints
- Searchable and filterable links
- Single SQLite database
- Super simple first start
- TOTP logins using SHA3-256
- This is not optional for users
Requirements
- Python
>= 3.10 - Memcached
Docker Run
docker build --tag favs .docker run -d favs
Docker Compose Run
docker-compose up -d
First Start (non-docker)
- Install from
requirements.txtusing pip - Edit the
data/config.jsonfile if required - Open up the URL, create a superuser, and login
- Give out the invitation link to a few people
- Perhaps submit a link with an invitation code!
Todo
- User management for admin page
- Move all inline style tags to extra.css file
- Better accessibility support
- Custom start page for users
- Encryption of private URLs
- Pinned bookmarks
- Passwords check against zxcvbn