photo gallery and storage solution
Building this project as a simple express api/web server template, including sqlite db, support for file upload, jest unit-tests. Currently using this to test new ideas and learn new technolgies. This current version is deployed on a digital ocean VM using nginx and cloudflare.
Requirements
Ensure you have the following dependencies installed on your system:
- Clone the photoground repository:
git clone https://github.com/michaelilao/photoground
- Change to the project directory:
cd photoground
- Install the dependencies:
npm install --global yarn // if you do not have it installed yet
yarn install
yarn add sharp --ignore-engines
- Create your .env file
cp .sample.env .env
Use the following command to run photoground in dev mode:
npm run dev
To deploy photoground use:
npm run start
photoground uses tailwind, when any new classes are added run:
npm run tailwind
To execute tests, run:
npm test
- documentation for api swagger
- dynamic db statements / orm
- extract out db layer and file system layer
- favourite and tags
- dynamic gallery
- poll for recently added photos, poll for 30s after landing
- put modal image in its own class, better structure
- SEO, sitemap.xml, searchable on google
- pipelines
- documentation/readme
- rotate bugs after saving - hard to recreate
- modal image/height sometimes not fitting