With the release of Lychee v5 we moved to a full TALL stack (Tailwind, Alpine, Livewire, Laravel). As a consequence this repository is now READ ONLY.
This repository contains the source of the JS frontend in order to allow its use with different backends.
Since the 1st of April 2018 this project has moved to it's own Organisation (https://github.com/LycheeOrg) where people are able to submit their fixes to it. We, the Organisation owners, want to thank electerious (Tobias Reich) for the opportunity to make this project live on.
Lychee is a free photo-management tool, which runs on your server or web-space. Installing is a matter of seconds. Upload, manage and share photos like from a native application. Lychee comes with everything you need and all your photos are stored securely. Read more on our Website.
To run Lychee, everything you need is a web-server with PHP 5.5 or later and a MySQL-Database. Follow the instructions to install Lychee on your server. Installation »
The frontend send POST requests to the server through. Calls are described in API ».
If you want to contribute and edit CSS or JS files, you need to rebuild Lychee. Build »
# Clone Lychee
git clone https://github.com/LycheeOrg/Lychee.git
# Initialize the frontend submodule
git submodule init
# Get the frontend
git submodule update
# Go into the frontend
cd Lychee-front
First you have to install the following dependencies:
node
Node.js v10.0.0 or laternpm
Node Packaged Modules
After installing Node.js you can use the included npm
package manager to download all dependencies:
npm install
The Gulpfile is located in <path to lychee>/Lychee-front/
and can be executed using the npm run compile
command.
The generated files will placed into ../dist/
or <path to lychee>/dist/
.
Before submitting a pull request, please apply our formatting rules by executing:
npm run format
You can also just incorporate a git hook: .git/hooks/pre-commit
#!/bin/sh
NO_COLOR="\033[0m"
GREEN="\033[38;5;010m"
YELLOW="\033[38;5;011m"
printf "\n${GREEN}pre commit hook start${NO_COLOR}\n"
PRETTIER="./node_modules/prettier/bin-prettier.js"
if [ -x "$PRETTIER" ]; then
git status --porcelain | grep -e '^[AM]\(.*\).php$' | cut -c 3- | while read line; do
${PRETTIER} --write ${line};
git add "$line";
done
else
echo ""
printf "${YELLOW}Please install prettier, e.g.:${NO_COLOR}"
echo ""
echo " npm install"
echo ""
fi
printf "\n${GREEN}pre commit hook finish${NO_COLOR}\n"
This can easily be installed by doing:
cp pre-commit ../../.git/modules/public/Lychee-front/hooks
chmod 755 ../../.git/modules/public/Lychee-front/hooks/pre-commit
While developing, you might want to use the following command to automatically build Lychee everytime you save a file:
npm start