Skip to content

Commit

Permalink
Update docks
Browse files Browse the repository at this point in the history
  • Loading branch information
Webreaper committed Nov 23, 2020
1 parent befaad0 commit e6acbb8
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 9 deletions.
Binary file modified .DS_Store
Binary file not shown.
57 changes: 48 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,23 @@ Damselfly is a server-based Digital Asset Management system. The goal of Damself

![Damselfly Screenshot](docs/Screenshot.png)

![Damselfly Screenshot](docs/Screenshot2.png)

## Features

* Server-based deployment, with a web UI, so the image library can be accessed via multiple devices without having to copy catalogues or other DBs to local device storage.
* Focus on extremely fast performance - searching a 500,000-image catalogue returns results in around a second.
* Full-text search with multi-phrase partial-word searches
* Fast keyword tagging workflow addition, with non-destructive tagging (JPEG images are not re-encoded)
* Background indexing of images, so that the collection is automatically updated when new images are added quickly
* Background indexing of images, so that the collection is automatically and quickly updated when new images are added or updated
* Background thumbnail generation
* Synology DSM/Photos compatibility mode to re-use the same thumbnails as your NAS
* Synology DSM/Photos compatibility mode to re-use exiting thumbnails generated by the indexing process
* Selection basket for collecting images from search results to save locally and work within Digikam/PhotoShop/etc.
* Download/export processing to watermark images ready for social media, or sending via Email etc.
* Runs on Windows, Linux and OSX, and in Docker.
* Desktop Client for hosted site to allow closer native integration with client OS
* Electron.Net Desktop Client for hosted site to allow closer native integration with client OS
* Synchronise images from server basket select to local filesystem for editing
* Other integrations coming in future
* Direct upload to Wordpress
* Persistable named basket selections

Expand All @@ -26,7 +30,36 @@ Damselfly is a server-based Digital Asset Management system. The goal of Damself
* Direct upload to CMS platforms
* Direct sharing to social media (Twitter, Facebook etc)
* Support for selection and upload to Alamy Stock Image photo service
* Simple editing/manipulation
* Simple non-destructive editing/manipulation - cropping, colour adjustment etc
* Synchronisation of local images to the server
* If you have ideas for other features - let me know by raising an issue!

## Installation

The easiest way to install Damselfly is via Docker.

```
docker run \
--name damselfly \
--restart unless-stopped \
-v /volume1/dockerdata/damselfly:/config \
-v /volume1/photo:/pictures \
-e SYNO_THUMBS=true \
-p 6363:6363 \
-d \
webreaper/damselfly
```

The default port is 6363. The /pictures volume is mapped to the root directory of your photographs.

Note that in order to set up inotify watchers on your folders, Damselfly will increase the number of inotify instances as follows:

```
echo fs.inotify.max_user_instances=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
```

Other options:
`SYNO_THUMBS=True` - Tells Damselfly to use existing Synology thumbnails (which are generated by DSM's indexing process) and to generate new thumbs in the same format.

## How do we use Damselfly? What's the workflow?

Expand All @@ -41,15 +74,21 @@ Workflow is a little like distributed software development using Git. Photo mani
5. Images in the basket can be copied back to the desktop/laptop for local editing in Lightroom/On1/Digikam/etc.
* Use the Damselfly Desktop client to write the files directly to the local filesystem in the same structure as on the server.
* Export to a zip file to download and extract into the local image folder for additional editing
6. Re-sync using RClone to push the images back to the collection.
6. Re-sync using RClone to push the images back to the collection [Future enhancement: Damselfly Desktop App will do this for you]

# Background/FAQ

## Do I have to run it in Docker?

No, you can run it standalone. For the first beta release, I'm only making Docker available, but I'll soon make binaries available for Windows and MacOS.

## Why 'Damselfly'?

Etymology of the name: DAM-_sel_-fly - **D**igital **A**sset **M**anagement that flies.

## Why Damsefly?

My wife is a horticultural writer and photographer ([pumpkinbeth.com](http://www.pumpkinbeth.com)) and over the years has accumulated a horticultural photography library with more than half a million pictures, in excess of 3TB of space.
I wrote Damselfly mainly to cater for a personal use-case, but decided to open-source it to make it available for others to use if it works for them. My wife is a horticultural writer and photographer ([pumpkinbeth.com](http://www.pumpkinbeth.com)) and over the years has accumulated a horticultural photography library with more than half a million pictures, in excess of 4.5TB of space.

In order to find and retrieve photographs efficiently when writing about a particular subject, all of the photos are meticulously tagged with IPTC keywords describing the content and subject matter of each image. However, finding a digital asset management system that supports that volume of images is challenging. We've considered many software packages, and each has problems:

Expand Down Expand Up @@ -96,11 +135,11 @@ In order to find and retrieve photographs efficiently when writing about a parti
* Con: Search ignores IPTC tags
* Con: Only supports Amazon's native apps. No support for _any_ third party clients.

## Damelfly Architecture
## What is the Damelfly Architecture?

Damselfly is written using C#/.Net Core and Blazor Server. The data model and DB access is using Entity Framework Core. Currently the server supports Sqlite, but a future enhancement may be to add support for PostGres, MySql or MariaDB.

## Wordpress Integration
## How do I set up the Wordpress Integration?

Damselfly allows direct uploads of photographs to the media library of a Wordpress Blog. To enable this feature, you must configure your Wordpress site to support JWT authentication. For more details see [JWT Authentication for WP REST API](https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/).

Expand Down Expand Up @@ -128,7 +167,7 @@ Once you have the site configured:

## Contributing to Damselfly

I am a professional developer, but Damselfly is a side-project. I'm also not a web designer or CSS expert (by any means). If you'd like to contribute to Damselfly with features, enhancements, or with some proper shiny design/layout enhancements, please submit a PR!
I am a professional developer, but Damselfly is a side-project, written in my spare time. I'm also not a web designer or CSS expert (by any means). If you'd like to contribute to Damselfly with features, enhancements, or with some proper shiny design/layout enhancements, please submit a PR!

## Thanks and Credits

Expand Down

0 comments on commit e6acbb8

Please sign in to comment.